oracle数据库对象又称模式对象
数据库对象包括:同义词、序列、视图、索引
- 同义词 现有对象的一个别名
- 简化SQL语句
- 隐藏对象的名称和所有者(隐藏原始对象内容)
- 提供对对象的公共访问
- 同义词有两种类型 私有同义词、公有同义词
- (私有同义词)CREATE SYNONYM emp(别名) FOR SCOTT.emp(表的名字);
- (公有同义词)CREATE PUBLIC SYNONYM emp_syn FOR SCOTT.emp;
- (创建或替换现有的同义词)CREATE OR REPLACE SYNONYM emp_syn FOR SCOTT.emp;
- (删除同义词)DROP SYNONYM emp; 或者DROP PUBLIC SYNONYM emp_syn;
- 序列是用于生成唯一、连续序号的对象
- 序列可以是升序的,也可以是降序的
- 使用CREATE SEQUENCE语句创建序列
-
查询序列信息:select * from toys_seq - 通过序列访问数据库
- NEXTVAL 返回序列的下一个值
- CURRVAL 返回序列的当前值
- INSERT INTO toys_seq (toyid, toyname, toyprice) VALUES ( toys_seq.NEXTVAL, ‘TWENTY’, 25); 指定序列的下一个值
- SQL> INSERT INTO toys_seq (toyid, toyname, toyprice) VALUES ( toys_seq.NEXTVAL, ’MAGIC PENCIL’, 75);
- SELECT toys_seq.CURRVAL FROM dual; 检索序列当前的值
- DROP SEQUENCE toys_seq; 删除序列
- 视图 以经过定制的方式显示来自一个或多个表的数据
- 优点
- 提供了另外一种级别的表安全性
- 隐藏的数据的复杂性
- 简化的用户的SQL命令
- 隔离基表结构的改变
- 通过重命名列,从另一个角度提供数据
- 创建视图
- create or replace view v_demp as select empno,ename,job from emp
- 索引是与表相关的一个可选结构
- 创建标准索引
- CREATE INDEX item_index ON itemfile (itemcode)TABLESPACE index_tbs;
- 重建索引
- ALTER INDEX item_index REBUILD;
- 删除索引 DROP INDEX item_index;
- 唯一索引确保在定义索引的列中没有重复值
- Oracle 自动在表的主键列上创建唯一索引
- 使用CREATE UNIQUE INDEX语句创建唯一索引