您的位置:首页 > 数据库 > Oracle

oracle入门命令

2012-03-12 16:38 267 查看
oracle入门命令
一  基本命令:
1.	spool命令用于在sqlplus中录屏
spool c:\1.txt  自动创建1.txt,录屏

spool c:\1.txt append
追加到1.txt中

2.	conn system/orcl  切换用户的连接
3.	-- 注释的意思
4.	exit退出
5.	清屏:host cls;
6.	修改密码:
//修改system用户的密码是system
alter user system identified by system;
alter user identified by 都是关键字。

当忘记密码时,可以采用
sqlplus sys/aaa as sysdba;--以数据库管理员的身份登录. 如果在本机登录
密码可以随意输入。

7.	修改sql语句:
(1)通过c命令
c/alert/alter (错语句/对语句)
>/     ----/运行上一个命令
用户已修改
(2)修改通过ed修改---专业的修改方式
>ed
弹出记事本来修改
8.	解锁: hr是用户名
alter user hr account unlock;
9.	show all 显示所有的命令
10.	distinct是重复行取一个---重要
11.	set timing on; 设置执行的时间
12.	set timing off;取消执行的时间
13.	set feedback off;取消当执行的时候显示已选择多少行。
14.	set feedback on; 显示当执行的时候显示已选择多少行。
15.	set heading off;取消字段的头信息
16.	set heading on;显示字段的头信息
17.	set trimout on;
18.	set trimout off;

二  查询表:
1.	select * from tabs;查询系统表
2.	select table_name from user_tables; 当前用户下面的表名
3.	desc 表名  查询表的结构
4.	set linesize 120  设置行的高度
5.	col 名称 for 9999字符  ---设置栈位的长度
--- col sal for  9999(栈位的长度)
6.set pagesize 长度   默认的是14
7.set pagesize 0 代表当前显示没有限制,禁止分页
8. show all 查看oracle的一些默认的配置
9.	select * from tab 查询所有的表
10.	select ename,job from emp;选择指定的行
11.	select sal*12 from emp; 运算符的运算
12.	select sal*12+nvl(comm,0) from emp;把null用0替代
13.	过滤条件
-where子句的使用,加上过滤的条件, 紧跟着from 表名之后
SQL> --where语法  select* |{distinct|express|clomn} from 表名 where 过滤条件
select * from emp where deptno=20;
select empno from emp where depton=20
select * from emp where job='CLERK';
select * from emp where hiredate='17-12月-80'
14.比较运算符  >  < ==
select * from emp where sal >1000;
select * from emp where sal >=3000;
select * from emp where sal<=3000;
select * from emp where sal <>3000;
select * from emp where sal !=3000;
select * from emp where sal between 1600 and 300;
select * from emp where job in('SALESMAN','MMANAGER');
select * from emp where sal in(1600,3000);
select * from emp where sal=1600 or sal=3000;
15.模糊查询
select * from emp  where ename like '%SN%';
select * from emp  where ename like 'SM%';
select * from emp  where ename like '%SM';

SQL> --在oracle中  % _是有多个含义的   % 0-多个字符   - 一个字符
SQL> --字段内容   % _ 没有任何含义  结合\ escape来实现
select * from jobs where job_id like 'IT\_%' escape '\' ;

select * from emp where comm is not null;
select * from emp where sal>1600 and job='MANAGER';
select * from emp where sal>1600 or job='MANAGER';
select * from emp where job in('MANAGER','SALESMAN')
select * from emp where job not in('MANAGER','SALESMAN')
16.排序
select * from emp order by sal;
select * from emp order by sal desc;
select * from emp order by comm;
select * from emp order by comm desc;
select * from emp order by nvl(comm,0) desc;
select * from emp order by hiredate;

SQL> --按别名排序
SQL> select sal*12+nvl(comm,0) from emp order by sal*12+nvl(comm,0);

select sal*12+nvl(comm,0) as salary from emp order by salary;

SQL> --多个列排序
SQL> select * from emp order by deptno,sal;

17.有时候在查出来的格式不好看的话,可以调整一下,有时候col value for 9999改变不了,所以要用以下的sql语句:
SQL> set linesize 120
SQL> col value for a20
SQL> col parameter for a40

注意:SQL 语言大小写不敏感。
SQL 可以写在一行或者多行
关键字不能被缩写也不能分行
各子句一般要分行写。
使用缩进提高语句的可读性。


 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息