《Oracle-4-1数据库对象(索引、视图、聚集、同义词).ppt》由会员分享,可在线阅读,更多相关《Oracle-4-1数据库对象(索引、视图、聚集、同义词).ppt(8页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、数据库对象OracleOracle数据库对象数据库对象 索引索引按特定的顺序定位、查找表中的记录,可以使用索引作用:可提高查询速度唯一索引:CREATE UNIQUE INDEX 索引名 ON 表(字段1字段2字段N);普通索引:CREATE INDEX 索引名 ON 表(字段1字段2字段N);反向键(逆键)索引:CREATE INDEX 索引名 ON 表(字段1字段2字段N)REVERSE;重建逆键索引为非逆键的索引(不可以将正常的索引重建为逆键索引):ALTER INDEX idx_dept REBUILD NOREVERSE;位图索引:CREATE BITMAP INDEX 索引名 ON
2、 表(字段1字段2字段N);OracleOracle数据库对象数据库对象 索引索引按特定的顺序定位、查找表中的记录,可以使用索引作用:可提高查询速度函数索引:CREATE INDEX 索引名 ON 表(函数名(字段参数列表);删除索引:DROP INDEX 索引名;数据字典:user_indexes提问:索引是不是越多越好?OracleOracle数据库对象数据库对象 视图视图视图:是由一个或多个表(或其它视图)中的数据的一种定制的表示,是一个查询定义,所以可以认为是一个存储的查询。功能:通过视图检索数据(隐藏了数据的复杂性)复杂的查询编写为视图(为用户简化了SQL命令)限制视图只能访问基表部
3、分特定的数据(隔离了基表的结构变化,保护了表中的敏感数据,为表提供附加的安全性)创建视图的语法:CREATE OR REPLACE FORCE VIEW view_name(alias,alias.)AS select_statement WITH CHECK OPTION WITH READ ONLY;删除视图:DROP VIEW 数据字典:user_viewsOracleOracle数据库对象数据库对象 视图视图注意:注意:视图可以和基本表一样被查询,但是但是利用视图进行数据增,删,改操作,会受到一定的限制。如果视图包含以下内容就会是一个不可更改的视图:如果视图包含以下内容就会是一个不可更
4、改的视图:1.连接操作符2.DISTINCT 操作符3.集合操作符4.聚合函数5.GROUP BY 子句6.伪列rownum或表达式现在来测试下用视图来操作表数据有哪些限制现在来测试下用视图来操作表数据有哪些限制聚集(Cluster)是存储表数据的可选择的方法.一个聚集是一组表,将具有同一公共列值的行存储在起,并且它们经常一起使用。这些公共列构成聚集码.例如,EMP 表和DEPT表共享DEPTNO 列.所以EMP表和DEPT表可聚集在一起,聚集码的列为DEPTNO列,该聚集将每个部门的全部职工行、该部门的行物理地存储在同一数据块中.在读数据块时,该数据块中聚集表的所有数据被读取(到SGA),这
5、是建立聚集的主要原因.因此聚集主要使用在有相关数据的两个表中且在一起被频繁访问.nOracleOracle数据库对象数据库对象 簇簇(Cluster)(Cluster)一 创建簇create cluster Class_cluster(classNO varchar2(10)tablespace users;二 簇的索引create index idxClassCluster on cluster Class_cluster;-只有建立了聚集索引才可能使用聚集三 基于簇创建表create table stuClass(ClassNo varchar2(10),ClassName varchar
6、2(20)cluster Class_cluster(ClassNo);create table student(stuno varchar2(10),stuName varchar2(10),ClassNO varchar2(10)cluster Class_cluster(ClassNo);四 删除簇drop cluster 簇名 INCLUDING TABLES-删除属于聚集的所有表CASCADE CONSTRAINTS;-从聚集外的表中删除引用聚集表主键或唯一键的全部引用完整性约束.若省略该选项,且有这样的引用完整性约束,则会出错,且不删除该聚集.nOracleOracle数据库对象数
7、据库对象 簇簇(Cluster)(Cluster)OracleOracle数据库对象数据库对象 同义词同义词同义词同义词(在表不存在的情况下也可以创建成功,但是不可使用)在表不存在的情况下也可以创建成功,但是不可使用)定义:定用一个别名来代替定义:定用一个别名来代替“用户名用户名.对象名对象名”功能:安全性高功能:安全性高 语法结构:语法结构:CREATE public SYNONYM CREATE public SYNONYM 同义词名同义词名 FOR FOR 用户名用户名.对象名对象名 使用同义词:使用同义词:SELECT*FROM SELECT*FROM 同义词同义词 删除同义词:删除同义词:DROP public SYNONYM DROP public SYNONYM 同义词同义词