Oracle序列和伪表
创建序列
create sequence sq_teacher_tno
start with 10 从哪一个数字开始
increment by 1 每次增长的数字
maxvalue 999999999999999 允许的最大值
cycle/nocycle 是否循环
cache/nocache 20 是否缓存
--创建序列
create sequence sq_dept_deptno
start with 60
increment by 10
--查询创建的序列
select * from user_sequences
--新增一条数据
insert into dept values(sq_dept_deptno.nextval,'市场部','1楼')
select * from dept
--当前的序列值
select sq_dept_deptno.currval from dual;
--查询下个序列值
select sq_dept_deptno.nextval from dual;
--删除序列
drop sequence sq_dept_deptno
--dual 伪表 它确实是一张表,表中只有一个字段
select * from dual;
select 9*999 from dual;
--sql标准规定:select 语句中必须有from,就是必须有表名?
--用dual来做一个伪表,也就是信息不在任何一张表的时候使用它
--查询系统时间
select sysdate from dual;
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual;
--给teacher表新增时间类型的数据
insert into teacher(tno,tname,birthdate)
values
(2000,'教师节快乐',
to_date('2015-02-02 09:05:50','yyyy-mm-dd hh24:mi:ss'))
(以上内容来自王硕老师)