Oracle基本的常用的对象

一、索引

1、索引的分类

按索引列的个数,索引分为单列索引和复合索引。

按索引列的唯一性,索引分为唯一索引和非唯一索引。

2、索引的组成

索引有两个部分组成,索引列所对应的值和行地址(ROWID,即原表中列所对应的行地址)。

3、索引的创建

为了对比明显,我们创建一个数据比较多的表:

SQL> create table test1 as select * from dba_objects;

SQL> insert into test1 select * from test1;



已创建50341行。


SQL> insert into test1 select * from test1;



已创建100682行。



SQL> select count(*) from test1;



COUNT(*)

----------

201364

打开Oracle的计数器

SQL> set timing on

SQL> select * from test1 where object_name='test1';

已用时间: 00: 00: 00.17

在object_name上创建索引

SQL> create index test1_on on test1(object_name);

SQL> select * from test1 where object_name='test1';

已用时间: 00: 00: 00.20

4、基于函数的索引

SQL> create index test1_on_l on test1(lower(object_name));

SQL> select * from test1 where lower(object_name)='test1';

5、删除索引

SQL> drop index test1_on_l;

二、同义词

同义词相当于为对象起的别名。如果对象名比较长,输入起来不方便,可以为对象起一个短一点的同义词。

1、创建同义词

 SQL> create synonym table1 for test1;

同义词又分私有和公有两种。上面我们所说的同义词,是私有同义词。另外还有一种公有同义词,使用“CREATE PUBLIC SYNONYM 同义词 FOR 对象名”命令创建。

公有同义词是大家所公有的,每个有户都可以使用。而私有同义词在默认情况下,只能由创建用户使用。这是它们的不同之处,其他都一样。

2、删除同义词

SQL> drop synonym table1;

三、序列

1、序列的创建

下面我们创建一个从1开始,每次增加2,最大值是20的序列:

SQL> create sequence seq1

2 increment by 2

3 start with 1

4 maxvalue 20

5 nocycle;

通过下面的语句可以查询创建的序列的信息

SQL> select sequence_name,min_value,max_value, increment_by,last_number from user_sequences;

2、序列的使用

SQL> select seq1.nextval from dual;

SQL> select seq1.currval from dual;

3、序列的修改

SQL> alter sequence seq1 cycle nocache;

4、删除序列

SQL> drop sequence seq1;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值