• 5.windows-oracle实战第五课 --事务、函数


    什么是事务

           事务用于保证数据的一致性,它由一组相关的dml语句组成,该组的dml语句要么全部成功,要么全部失败。

    事务和锁

           当执行一个事务dml的时候,oracle会被作用的表上加锁,防止其他用户改表的结构。

    保存点是一个回退机制,个数没有限制
    savepoint a1;
    delete from emp where empno=9996;
    select *from emp;
    savepoint a2;
    delete from emp where empno=9990;
    rollback to a2;
    rollback to a1;

    如果commit提交事务,会确认事务的变化,结束事务,删除保存点,释放锁,其他会话将可以查看事务变化的新数据。如果不提交,关闭后,会自动提交;全部取消 rollback。

    只读事务:可以确认用户只能取得某时间点的数据。尽管其他会话可能提交新的事务,但是只读事务将不会取得最新数据的变化,从而保证取得特定时间点的数据信息。set transaction read only

    常见字符函数:

        lower(char):将字符串转化为小写的格式

        upper(char):将字符串转化为大写的格式

        length(char):返回字符串的长度

        substr(char ,m,n):取字符串的子串

        replace(char1,search_string,replace_string):替换

     

     显示正好有5个字符的员工的要求

     显示所有员工姓名的前三个字符

     以首字符大写的方式显示所有员工的姓名

     以首字母小写方式显示所有员工的姓名

    显示所有员工的姓名,用“我是A” 替换所有"A"

    常见数字函数

          round(char,m)  四舍五入

          trunc(char,m)小数点后面通通舍去

          floor(char)   往下取整

          ceil(char)     向上取整

           mod(m,n)取模

     
    日期函数用于处理date类型的数据,oracle默认是dd-mon月-yy
     
    (1)sysdate:该函数返回系统时间
    (2)add_months(d,n) 加月份的函数
    (3)last_day:返回指定日期所在月份的最后一天
     
    查找已经入职400月多的员工
    select *from emp where sysdate>add_months(hiredate,400);
    显示满10年的员工姓名和受雇时间
    select *from emp where sysdate>=add_months(hiredate,12*10); 

    对于每个员工,显示加入公司的天数
    select trunc(sysdate-hiredate) "入职天数",ename from emp;

    找出各个月份倒数第三天受雇的所有员工
    select hiredate,ename from emp where last_day(hirddate)-2=hiredate
     
    转换函数:用于将数据类型从一种类型转换成另外一种;如将“10” 转换成10;将10转换成10。
    函数
    to_date('1992-12-12','yyyy-mm-dd') 将字符串转化成date类型的数据 ,在插入日期的时候可以用到。
    to_char   
         1)显示更加细致灵活   
         2)显示指定的货币符号(用到在查)
    时分秒都显示出来
    select ename,to_char(hiredate,'yyyy-mm-dd hh24:mi:ss')  from emp;
    显示12月份入职的员工
    select *from emp where to_char(hirdedate,'mm') =12;
     
     
  • 相关阅读:
    假丶依赖注入
    .NET Core 傻瓜式CSRedisCore缓存
    .NET Core MD5加密 32位和16位
    数据库所对应的函数
    使用通配符进行过滤
    WHERE 子句操作符
    不同的数据库查询行数的方式
    第一课了解SQL
    微服务架构综述
    三层应用与单块架构
  • 原文地址:https://www.cnblogs.com/dangjingwei/p/12093918.html
Copyright © 2020-2023  润新知