Oracle数据库控制台操作4

控制台操作4------函数

字符串函数

--大写转小写
select lower('HELLO WORLD') from dual;
--小写转大写
select upper('hello world') from dual;
--将首字母转换为大写
select initcap('hello world') from dual;
结果Hello World 如果有空格,它会将后面的单词的首字母也变成大写

--查询指定字符在字符串的位置  instr('字符串','字符')
select instr('hello world','l') from dual; //结果是3 从1下标开始算
--字符串的填充  左填充  
select lpad('0088','11','*') from dual;//在0088的左边填充*,一直填充到长度是11
--右填充
select rpad('4306','18','*') from dual;//在4306的右边填充*,一直到字符有18位
--字符串的截取
select substr('hello world','3') from dual;//从3开始截取,一直到最后
select substr('hello world','1','5') from dual;//从1开始截取到5的位置

--字符串的替换
select replace('hello world','l','*') from dual;//将l的字符替换成*
--字符转数字  只能是纯数字的字符才能转数字
select to_number('2019') from dual;

数学函数

--四舍五入
select round(-57.6) from dual;//结果是-57
select round(-57.6478,'2') from dual;//结果是-57.65  四舍五入小数点后面的2位
--截断
select trunc('73.1243','2') from dual;//结果是73.12 直接截取小数点后面两位
--取模
select mod(10,3) from dual;//结果是1  10/3于1

日期函数

--字符串转时间类型
select to_date('2019-02-05','yyyy-mm-dd') from dual;
--时间类型转字符串类型
select to_char(sysdate,'yyyy-mm-dd HH24:mm:ss') from dual;
--计算员工表的入职的月数,
select months_between(sysdate,hiredate) from emp;
--找出一个月的最后一天
select last_day(sysdate) from dual;
--找出下一个星期日  可以写星期一 星期二 星期三 星期四 星期五 星期六
select next_day(sysdate,'星期日') from dual;

Oracle的锁机制
悲观锁 乐观锁 死锁
悲观锁
给数据库一张表或者是一条数据上锁,如果上一个人没有操作完,下一个人只能等,等上一个人操作完后,下一个人才能操作。
上锁:for update;
select * from emp where empno=7369 for update;给empno=7369的数据上锁
解锁:1.事务回滚 rollback; 2.提交事务 commit;
乐观锁
不手动进行锁的操作,在表中加字段,代表表的数据的版本,版本为1,说明是最初的版本,还没有操作,如果有人对该数据操作,也要操作修改版本号。
死锁
你不能解锁操作,别人也不能解锁操作
解决死锁:重启服务器

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值