Oracle常用小记

1. 控制台下启动Oracle的监听服务命令: lsnrctl start      启动数据库实例: oradim -startup -sid 数据库实例名(如:orcyn)。

2. Oracle用户验证机制:普通用户以数据库方式验证,特权用户默认以操作系统认证,如果验证不成功,再用数据库验证。可以修改aqlnet.ora使特权用户的认证方式为数据库验证。

3. 管理员密码找回:复制原密码文件后再删除该密码文件,文件名如PWDorclyn.ora。然后再DOS下输入->orapwd ->orapwd file=原路径+原文件名 password=新密码 entries=10(entries表示同时允许几个特权用户同时登陆)。希望新的密码生效,需要重新启动数据库实例。

4. 权限分为系统权限和对象权限。系统权限是和数据库管理相关的权限,如creat session,creat table等;对象权限是和用户操作数据对象相关的权限,如update,insert,delete,select等。

5. 权限转移 with grant option//表示得到权限的用户,可以把权限继续分配出去

                  with admin option//如果是系统权限,则带with adminoption

6. desc 表名  用于查看表的结构。

7. 表的修改

     alter table 表名 add/modify/drop column (列名,数据类型(删除时没有数据类型))

     rename 表名 to 新表名      用于修改表名

     drop table 表名           用于删除表

8. orcale的CRUD操作

添加: insert into 表名(列名,列名)values (值,值) 

          字符和日期类型需要包含在单引号中;插入控制,不指定或者设为null;如果给表的每列都添加,则可以不带列名

修改: update 表名 set 列名=表达式 列名=表达式 where 条件

          不能是where fellowship = null/‘’

删除: delete from 表名 where 条件

          delete语句不能删除某一列的值 ,如果要删除某一列的值,可使用update;仅删除记录,不删除表本身,如要删除表,使用drop语句;删除后可找回,truncate table

          表名不能找回,删除速度快

 查询:select [distinct] *|列名,列名 from 表名 [where 条件]

          distinct可选,指显示结果的时候,是否剔除重复数据

           尽可能返回较少的行,耗时少

           取消重复行 select distinct 列名,列名 from 表名

9. sql语句不区分大小写,但是内容区分大小写,如where name = 'a’跟where name = 'A’不同。

10. nvl函数是oracle提供的,用于处理数据null的问题,基本用法nvl(comm,0):如果comm为空,返回0,否则返回本身的值。(null相乘想加都是空)

    使用列的别名 select ename ”姓名“ ,sal*12 as ”年收入“ from emp

    连接字符串(||)select ename || '是一个' || job from emp 在查询时,把多列拼接起来作为一列返回

11. 锁定 alter user scott account lock      解锁 alter user scott account unlock

12.

 

13.

 between左右都是闭区间。

14. like查询(模糊查询)

 

15. where条件中使用in

16. is null的用法

17. 使用逻辑运算符

18.order by 子句,用处:对结果进行排序显示,默认升序(asc),降序(desc)

查询结果:

19. oracle支持使用别名排序

20. 

原文地址:https://www.cnblogs.com/yannuonuo/p/3006242.html