Oracle-第13章 序列、索引、同义词

13.1 序列

  序列是数据库中一种对象,用于生成一串不重复的编号,可以递增或递减。
   最简单的序列结构:create sequence seq_cla;
   一般一个序列只在一个表格中使用,即每个表格会使用一个序列。
  例1:

create sequence seq_stu
minvalue 10000最小值
maxvalue 100000最大值
start with 10000起始值
increment by 1增量/补偿,可以输正数或负数,默认是1
cache 20;批量生成多少序列,使用完后再生成一批,用于序列的创建优化。

  例2:

create sequence seq_subject
minvalue 1
maxvalue 100000
start with 100
increment by 1
cache 20;

  序列的使用:
  序列在使用,可以使用序列的两个伪列:currval,nextval。currval取得序列的当前值,nextval取得序列的下一个值。序列创建,currval是没有值,必须先使用nextval;必须先使用nextval获取下一个值,currval才会拥有数值

  例:

select seq_subject.nextval from dual;
select seq_subject.currval from dual;
select * from cla;

13.2 索引

  索引是rowid数据库的一种对象,作用提高数据查询性能。一般针对查询 比较多的列进行创建。有大量重复性的数据的列,不适合创建索引。一个列独立创建索引,也可以同时跟其他列一起创建索引。一般在数据量比较少时,不建议创建索引,在数据量较大时,如果添加索引后,可以明显优化查询性能,这是有效索引。包含大量空值的列不适合创建索引,索引的数据量在2%-4%适合创建索引,索引的缺点会占用空间和降低DML的操作速度。

  例:

create bitmap index IDX_MYCLASS_CLANAME on MYCLASS (claname);

13.3 同义词

  create [public] synonym 同义词 for [schema.]对象名;把cla表共享给其他用户使用。
  例:

create public synonym publiccla for cla;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值