oracle数据库实验讲义-读书笔记(一)

1、激活锁定的用户
alter user scott account unlock identified by tiger;
2、使用内含脚本建立scott用户
@%oracle_home%\rdbms\admin\utlsampl.sql
3、查看当前用户所有的表
select * from tab;
4、将屏幕显示输入到文本文件内
spool D:1.txt
select * from emp;
spool off
=====================================

spool D:1.txt append
select * from emp;
spool off
5、运行缓冲区内的sql语句
run或/
6、@脚本:运行指定脚本
@%oracle_home%\rdbms\admin\utlxplan.sql
@@为运行相对路径下的脚本,一般是在大教本调用小脚本的时候使用。
7、Save:将当前SQLPLUS缓冲区内的SQl语句保存到指定的文件中
save c:\2.txt
8、Get:将文件中的SQl语句调入到SQLPLUS缓冲区内。
get D:\2.txt
9、Edit:编辑当前SQlPlus缓冲区内的SQl语句
如 ed
10、注释
行注释:--是注释当前行
块注释:/* */是注释多行
11、清屏命令
clear screen
12、修改用户的密码
alter user sys identified by sys;
13、distinct去掉重复的行
select distinct deptno from emp;
14、where和order by
select deptno,ename from emp where deptno=10 order by deptno;
15、关系运算
=,<>,!=,^=,>=,<=,>,<,Between...and....(含上下界)
16、in、like
select deptno,ename,sal from emp where deptno in(10,20);
like
-通配一个,仅匹配一个字符,
%通配没有或多个字符
select ename,deptno from emp where ename like 'J%';
select ename from emp where ename like '%s_%' escape 's';
17、优先级
算术运算
连接运算
关系运算
is [not] null,like,[not]In
between
not
and
or
括号强制优先级
18、order by 子句
默认是升序 asc
降序要指定 desc
19、操作日期的函数
sysdate 求当前数据库的时间:
eg:select sysdate from dual;
六个月后是哪天:
select add_months(hiredate,6),hiredate from emp;
取两个时间的月间隔:
select months_between(sysdate,hiredate),sysdate,hiredate from emp;
当前日期算起,下个星期五是哪一天(若为中文的客户端,就用‘星期五’来表达):
select next_day(hiredate,'friday'),hiredate from emp;
该日期的月底是哪一天:
select last_day(hiredate),hiredate from emp;
日期的进位和截取(round,trunc):
select hiredate,round(hiredate,'mm'),round(hiredate,'month')from emp;
select hiredate,round(hiredate,'yyyy'),round(hiredate,'year')from emp;
select hiredate,trunc(hiredate,'mm'),trunc(hiredate,'month') from emp;
select hiredate,trunc(hiredate,'yyyy'),trunc(hiredate,'year') from emp;
数字的进位和截取是以小数点为中心,取小数点前或后的值,而日期的进位和截取是以年、月、日、时、分、秒为中心。
20、数据类型的显示转换
To_char、To_date、to_number
日期转换为字符串,需说明字符串的格式
select ename.to_char(hiredate,'yyyy/mm/dd')from emp;
FM清除前置的零和空格。
select ename,to_char(hiredate,'fmyyyy/mm/dd')from emp;
其他格式:years、month、mon、day、dy、am、ddsp、ddspth(格式内添加字符串请用双引号)
select to_char(hiredate,'fmyyyy"年"mm"月"')from emp;
当前距离零点的秒数:
select sysdate,to_char(sysdate,'sssss')ss from dual;
select to_char(sysdate,'yyyy year mm month mon dd day dy ddsp ddspth')from dual;

你可能感兴趣的:(oracle数据库)