19、Oracle数据库中的其它对象
Update date:
1、 序列 sequence
1.1 作用
用来产生主键值的 保证产生不重复的数字
------------------------------------------------------------------------------------------
1.2 如何创建序列
create sequence 序列名;
序列名 表名_字段名_seq;
------------------------------------------------------------------------------------------
1.3 如何使用
序列名.nextval 偶尔使用 序列名.currval
举例:
create table testseq(
id number constraint testseq_id_pk primary key,
name varchar2(30)
);
create sequence testseq_id_seq;
insert into testseq values(testseq_id_seq.nextval,'test'||testseq_id_seq.currval);
------------------------------------------------------------------------------------------
1.4 删除序列
drop sequence 序列名;
2、索引 index (了解)
2.1 作用
加速查询的
3亿
不使用索引 500s
使用索引 0.01s
------------------------------------------------------------------------------------------
2.2 原理
索引 底层使用树状结构 通过消耗大量的空间 和 时间 来达到加速查询的目的。
------------------------------------------------------------------------------------------
2.3 如何建立
create index 索引名 on 表名(字段名);
注意不要在 主键 和 唯一性字段上 加索引 因为系统已经自动建立过索引了。
create table emp222 as select id,first_name name,salary from s_emp;
set timing on;
create index emp222_name_index on emp222(name);
------------------------------------------------------------------------------------------
2.4 删除索引
drop index 索引名;
drop index emp222_name_index;
3、视图 view
3.1 本质
视图的本质 就是一条sql 语句的select语句。
相对于 视图对应的数据而言 视图本身的空间可以忽略不计。
------------------------------------------------------------------------------------------
3.2 语法
create or replace view 视图名 as select语句;
------------------------------------------------------------------------------------------
3.3 举例
create or replace view myview as select id,first_name name,salary from s_emp;
------------------------------------------------------------------------------------------
3.4 作用
可以对同一份物理数据 作出不同表现 可以用来做权限的管理
可以用来简化子查询