版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/L1558198727/article/details/88835784
创建序列:
按照一定的队则自动增加 减少数字的一种数据库对象
create sequences 序列名
[increment by n] +1 /-1
[start with n ]
[maxvalue n]
[minvalue n]
[cycle nocycle]
[cache nocache]
例子:创建一个序列 test 起始值是10 每次增长2
create sequence test
start with 10
increment by 2
maxvalue 100
minvalue 9
cycle
cache 10;
两个伪列
nextval : 序列返回的下一个值
currval :序列返回的当前值
例子:
stu{
sid number
sname varchar2
}
create sequence test
start with 10
increment by 1;
insert into stu values(stu.nextval,'Tom')
select * from stu;
结果是得到了自动增序的数据
也可以用 currval 获取当前的序列值
currval 当前序列被引用前,必须先是用 nextval创建序列!
修改序列
alter sequence 序列名
[increment by n] +1 /-1
[maxvalue n]
[minvalue n]
[cycle nocycle]
[cache nocache]
cache 10
缓存中序列值的个数为10
删除序列:
drop sequence 序列名
伪列 rowid
伪列
系统自动生成
表示每一个数据库记录的物理地址 唯一的
好处:可以快速定位到记录上
组成:
数据对象编号6位 + 相关文件编号3位 + 块编号6位 + 行编号3位
索引
分类:
单列索引
一个列上
复合索引
几个列上
创建索引:
自动创建
建表的时候使用了 primary key 或者 unique 数据可自己创建索引
手动创建:
用户使用创建语句进行创建:
create index 索引名
on table(列。。。)
命名规范:
idx_表名_列名
实例:
单列索引
create index idx_emp_ename
on emp(ename)
复合索引:
create index idx_emp_ename
on emp(ename,job)
索引的作用:
优点:
执行速率会加快
缺点:
占用空间
降低DML操作的效率
删除索引
drop index 索引名