Oracle命令整理

1 常用命令

常用命令

1

sqlplus  scott/tiger@192.168.47.10:1521/orcl      后面不要加

 

sqlplus  sys/oracle  as sysdba            【密码认证】

 

sqlplus  用户名任意/密码任意 as sysdba    【主机认证】

2

spool  d:\基本查询.txt                录屏开始

 

spool  off                           录屏结束

3

show user                查看当前用户

 

select * from tab;         查看当前用户下的所有表

 

desc   表名              查看表的结构

4

show  linesize           

 

set    linesize 200

 

show  pagesize   

 

set  pagesize 30         设置每页显示的记录的条数

 

col 列名 for  a8           设置列宽     for是format的缩写

 

col 列名 for  9999         设置列宽   9表示一位9999表示四位

5

host  cls                 windows下清屏

 

host  clear               Linux下清屏

6

ed                   弹出记事本编写上一条代码 edit缩写

 

c 命令             change的缩写

            用法

            1  输入需要修改的行号

            2  c/原内容/修改后的新内容

 

/                   执行当前编辑的命令

7

nvl(a,b)               a不为null等于a,a为空等于b

 

nvl2(a,b,c)            当a=null返回c,否则返回b

 

nullif(a,b)             当a和b相等的时候,返回null,否则返回a

 

coalesce              从左到右 找到第一个不为null的值

8

select userenv('language') from dual;  查看服务端编码

 

select * from V$NLS_PARAMETERS;    查看参数的值

 

NLS_LANG     AMERICAN_AMERICA.ZHS16GBK  环境变量

9

http://192.168.47.10:5560/isqlplus/  浏览器打开isqlplus

 

http://192.168.47.10:1158/em/    浏览器打开OEM

10

break on deptno  skip  2  相同的列显示一次  不同分组之间跳过两行

 

break  on  null    取消第26条命名的设置

11

set timing on        打开语句执行时间显示

 

set timing off        关闭语句执行时间的显示

12

set feedback off      关闭每次语句执行后的提醒  比如:已插入1行

 

set feedback on

13

@d:\temp\testdelete.sql    执行指定目录下的脚本文件

14

savepoint a;                创建保存点

 

rollback to savepoint a;     返回到指定保存点

 

commit;

 

rollback;

15

set transaction read only;      设置隔离级别

16

wm_concat(varchar2)          多行函数  行转列

 

concat(char1,char2)       || 

17

show recyclebin;              查看回收站

 

purge recyclebin;             清空回收站

 

flashback  table 表名 to before drop;         从回收站恢复

 

drop  table 表名 purge;      彻底删除,不进入回收站

 

select  * from 回收站的表名【RECYCLEBIN NAME】;

 

注意:管理员没有回收站,回收站只针对普通用户

18

grant  create view to scott;         授予创建视图的权限

 

grant  select on hr.employees  to  scott;

 

grant  create  synonym  to scott;

 

grant  create  tablespace to scott;

19

--SQL的执行计划

 

explain plan for select * from emp where deptno=10;

20

查看数据库的版本

 

SELECT version

FROM product_component_version

WHERE substr(product, 1, 6) = 'Oracle';

21

 

 

查询星期几中文显示

 

select to_char(sysdate,'day','NLS_DATE_LANGUAGE=''SIMPLIFIED CHINESE''') from dual;

22

alter session set NLS_DATE_LANGUAGE='SIMPLIFIED CHINESE';

 

alter session set NLS_DATE_FORMAT='yyyy-mm-dd';

2 基本查询

基本查询

 

3 条件查询

条件查询

 

1

比较运算符 =, >, >= ,< ,<= ,<>

2

between and , in(set) , like , is null

3

escape

4

and , or , not

4 排序

排序

 

5 分组函数

分组函数

 

1

sum max min avg count()

2

COUNT(DISTINCT expr)

3

select deptno,job,sum(sal) from emp group by rollup(deptno,job);

6 多表查询

多表查询

 

 

 

 

 

7 子查询

子查询

 

any  ,  all ,  in     10个注意问题

1

括号

2

合理的书写风格

3

可以在主查询的where select having  from 后面使用子查询

4

不可以在group by使用子查询

5

强调from后面的子查询

6

主查询和子查询可以不是同一张表;只有子查询返回的结果 主查询可以使用 即可

7

一般不在子查询中排序;但在top-n分析问题中 必须对子查询排序

8

一般先执行子查询,再执行主查询;但相关子查询例外

9

单行子查询只能使用单行操作符;多行子查询只能使用多行操作符

10

子查询中的null

8 集合查询

集合查询

1

union/union all ,  intersect   , minus

9 字符函数

字符函数

1

lower  upper  initcap

2

concat  substr  instr  trim length length replace

10 数字函数

数字函数

1

round trunc mod abs power exp   floor  ceil

11 日期函数

日期函数

1

sysdate

2

months_between  add_months  next_day  last_day  round trunc

12 转换函数

转换函数

1

to_char   to_date   to_number

13 通用函数

通用函数

1

nvl           a不为null等于a,a为空等于b

2

nvl2          当a=null返回c,否则返回b

3

nullif(a,b)     当a和b相等的时候,返回null,否则返回a

4

coalesce       从左到右 找到第一个不为null的值

14 条件表达式

条件表达式

1

 

2

15 表的增删改

表的增删改

1

2

3

4

delete和truncate的区别

 

 

 

16 使用DDL语句创建和管理表

使用DDL语句创建和管理表

 

 

创建表 create table 语句

1

 

2

 

 

 

 

 

 

删除表   drop table

3

drop table 表名;

4

drop table 表名 purge;

5

desc 表名

 

修改表结构  alter table 语句

6

alter table 表名 add 列名 类型(长度) 约束;   【增加列】

7

alter table 表名 modify 列名 类型(长度) 约束; 【修改列的类型及约束】

8

alter table 表名 rename  column旧列名 to 新列名 ;  【修改列名】

9

alter table 表名 drop  column列名;                    【删除列】

 

重命名表   rename

10

rename 表名 to 新表名;                              【修改表名】

 

删除表中的所有数据并释放表

11

truncate table 表名;

 

创建表空间

 

 

创建用户

 


 

用户赋权限

 


 

 

16 视图

视图

 

 

1

WITH READ ONLY:只能做查询操作

2

with check option :我们通过这个视图只能操作我们看的到的数据。

3

使用CREATE OR REPLACE VIEW 子句修改视图

4

drop view 视图名;

5

WITH READ ONLY 选项屏蔽对视图的DML 操作

17 序列

序列

1

 

 

 

 

 

 

 

 

 

 

 

2

NEXTVAL 返回序列中下一个有效的值,任何用户都可以引用

 

CURRVAL 中存放序列的当前值

 

NEXTVAL 应在 CURRVAL 之前指定 ,二者应同时有效

3

序列在下列情况下出现裂缝: 1回滚 2系统异常 3多个表同时使用同一序列

18 索引

索引

 

 

 

 

 

 

19 同义词

1

create synonym hremp for hr.employees;    创建

2

drop synonym hremp;                      删除

20 pl/sql

1

set   serveroutput  on       打开Oracle的数据输出开关

2

desc  包名/表名/存储过程名/存储函数名/程序包

 

DBMS_DATAPUMP   DBMS_OUTPUT

3

dos命名行复制垂直区域内容   按住alt键的同时选择

4

select * from user_triggers;      查询触发器

 

select * from user_source;       查看过程及函数

 

select * from tab;               查询用户下的所有表

5

drop procedure 过程名;

6

程序结构

 

7

变量

 


8


 

 

9


 

 

10


 

 

11


 

 

 

 

 

 


 

12

创建存储过程

 

13

调用存储过程

 

 

14

15

存储函数的调用

 

16

17

创建包体

 

18

创建触发器

 

19

 

 

 

 

 

 

 

 

posted @ 2018-04-22 14:23  Jepson6669  阅读(350)  评论(0编辑  收藏  举报