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'))

 (以上内容来自王硕老师)

posted @ 2016-09-20 21:22  漁樵  阅读(2622)  评论(0编辑  收藏  举报