Oracle常用的一些语法、命令和函数

一、常用语法

--1. 删除表时级联删除约束 drop table 表名 cascade constraint --2. 当父表中的内容被删除后,子表中的内容也被删除 on delete casecade --3. 显示表的结构 desc 表名 --4. 创建新的用户 create user [username] identified by [password] --5. 给用户分配权限 grant 权限1、权限2...to 用户 ex:grant create session to [username] --此时只能连接到数据库 grant connect,resource to [username] --此时权限能满足要求 grant select,delete on scott.emp to [username] --6. 回收权限 revoke select ,delete on scott.emo from [username] --7. 修改用户密码 alter user [username] identified by [password] --8. 下次登录时提示修改密码 alter user [username] password expired --9. 锁定用户 alter user [username] account lock --10. 解锁被锁定的用户 alter user [username] account unlock

二、常用命令

--1. 设置显示宽度 set linesize 100; --2. 设置每页显示条数 set pagesize 30; 3. 用记事本打开 em a.sql --4. 执行文件a中的代码,可指定文件的路径 @d:a.txt @ a --5. 根据用户名和密码连接数据库 如果连接超级管理员(sys) 则应加上as sysdba; conn 用户名/密码 --6. 显示当前连接的用户 show user; --7. 得到当前用户下的所有表 select * from tab; --8. 查看表结构 desc temp; --9. 继续执行上一个查询语句 / --10. 清屏 clear scr;

三、常用函数

·字符函数

--1. 将小写字母转换成大写,dual 为一虚表 select upper('coolszy') from dual; --2. 将大写字母转换成小写 select lower('KUKA') from dual; --3. 将每个单词的首字母大写,其他位置的字母小写 select initcap('kuKA aBc') from dual; --4. 连接字符串,但没有||好用 select concat('Hello',' world') from dual; --5. 截取字符串,第二个参数是从第几个字母开始截取(从1开始,如果是一个负数,则从结尾数起),第三个参数是需要截取的字母的个数 select substr('hello',2,3) from dual; --6. 求字符串长度 select length('hello') from dual; --7. 替换字符串 select replace('HELLO','L','x') from dual;

·数值函数

--1. 四舍五入 select round(789.536) from dual; select round(789.536,2) from dual; select round(789.536,-1) from dual; --2. 舍去小数,但不进位 select trunc(789.536) from dual; select trunc(789.536,2) from dual; select trunc(789.536,-2) from dual; --3. 求余 select mod(10,3) from dual;

·日期函数

--1. 返回当前日期 select sysdate from dual; --2. 返回两个日期之间的月数 select months_between(sysdate,'16-6月 -09') from dual; --3. 返回加上指定月数后的日期 select add_months(sysdate,4) from dual; --4. 返回当前日期之后的下一个星期一的日期 select next_day(sysdate,'星期一') from dual; --5. 求本月的最后一天 select last_day(sysdate) from dual;

·转换函数

--1. to_char select to_char(sysdate,'yyyy') year,to_char(sysdate,'mm'),to_char(sysdate,'dd') from dual; select to_char(sysdate,'yyyy-mm-dd') from dual; select to_char(sysdate,'fmyyyy-mm-dd') from dual; --取消月和日前面的0 select to_char('20394','99,999') from dual; --分割钱 9表示格式 select to_char('2034','L99,999') from dual; --加上钱币符号 --2. to_number select to_number('123')*to_number('2') from dual; --3. to_date select to_date('1988-07-04','yyyy-mm-dd') from dual;

·通用函数

--1. 如果为null,则用0代替 select nvl(null,0) from dual; --2. 类似于 switch...case... select decode(2,1,'内容是1',2,'内容是2',3,'内容是3') from dual;
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值