Oracle 对象语句1.ppt
《Oracle 对象语句1.ppt》由会员分享,可在线阅读,更多相关《Oracle 对象语句1.ppt(40页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第五章oracleoracle数据库对象数据库对象本章目标l本章需要掌握oracle中常用的几个对象:视图、索引、同义词、序列以及聚簇。l了解各种对象的原理,熟练操作。1.1 视图l定义:一种数据库对象,它允许从一个表或定义:一种数据库对象,它允许从一个表或一组表中建立一个一组表中建立一个“虚的但是很实用的表虚的但是很实用的表”。l视图与表相比,有如下相同之处:视图与表相比,有如下相同之处:-视图与表一样由列组成,其查询方式与表视图与表一样由列组成,其查询方式与表完全相同。完全相同。-和表一样,用户也可以在视图中插入、更和表一样,用户也可以在视图中插入、更 新或删除数据,在视图中做这些操作时和
2、在新或删除数据,在视图中做这些操作时和在 表中是一样的。表中是一样的。视图与基表区别l在大多数可以使用表的场合中,都可以使用视图。在大多数可以使用表的场合中,都可以使用视图。但视图与表之间存在着本质的区别:但视图与表之间存在着本质的区别:-视图中没有数据,而仅仅是一条视图中没有数据,而仅仅是一条sql查询语句。按查询语句。按此查询语句检索出的数据以表的形式表示。视图中此查询语句检索出的数据以表的形式表示。视图中的列可以在一个或多个基本表中找到。所以视图不的列可以在一个或多个基本表中找到。所以视图不使用物理存储位置来存储数据。使用物理存储位置来存储数据。l视图的定义存储在数据字典中。对一个视图进
3、行查视图的定义存储在数据字典中。对一个视图进行查询时,视图将查询其基于的表,并且以视图定义所询时,视图将查询其基于的表,并且以视图定义所规定的格式和顺序返回值。规定的格式和顺序返回值。l由于视图没有直接相关的物理数据,所以不能像表由于视图没有直接相关的物理数据,所以不能像表那样被索引。那样被索引。视图的优缺点l优点:优点:-安全:可以利用视图限制用户访问表中记录的权安全:可以利用视图限制用户访问表中记录的权力,经常采用视图来阻止用户查看表中的全部数据。力,经常采用视图来阻止用户查看表中的全部数据。还可以限制用户向表中插入数据的能力。还可以限制用户向表中插入数据的能力。-方便:视图可以隐藏数据的
4、复杂性。执行连接方便:视图可以隐藏数据的复杂性。执行连接(join)操作,用户可从两个或多个表中检索出信)操作,用户可从两个或多个表中检索出信息,但过于繁琐、复杂的连接操作常常使用户感到息,但过于繁琐、复杂的连接操作常常使用户感到费解、迷惑。在这种情况下,就有必要建立混合有费解、迷惑。在这种情况下,就有必要建立混合有多表信息的视图,从而生成简单易懂的结果。多表信息的视图,从而生成简单易懂的结果。视图的优缺点l缺点:缺点:-性能:因为视图是由语句构造的表,所以若是多性能:因为视图是由语句构造的表,所以若是多个表,可能连接时间过长,造成性能下降。个表,可能连接时间过长,造成性能下降。-更新限制:单
5、表连接建立的视图必须转换为对基更新限制:单表连接建立的视图必须转换为对基表的更新操作。若是多表连接创建的视图只能是表的更新操作。若是多表连接创建的视图只能是只读的,不能直接更新。只读的,不能直接更新。创建视图l格式:格式:create or replace force view 模式名模式名.视图名视图名 as select 语句语句 with read only|with check optionl说明:说明:-名字要唯一,不能与其他对象重名。名字要唯一,不能与其他对象重名。-or replace:表示允许新视图替换已存在的一个同名视图。:表示允许新视图替换已存在的一个同名视图。-force
6、:表示强制建立视图,即使在基本表不存在或无权访问基:表示强制建立视图,即使在基本表不存在或无权访问基本表的情况下。本表的情况下。-with read only:所建立的视图为只读,不能插入、修改、删除:所建立的视图为只读,不能插入、修改、删除数据。数据。-with check option:每当向视图插入或更新数据时,保证能被:每当向视图插入或更新数据时,保证能被视图查出来。视图查出来。查看视图l查询视图:使用数据字典。查询视图:使用数据字典。视图名说明dba_views包含了数据库中所有的视图信息。all_views包含了当前用户可以访问的所有视图信息。user_views 包含了当前用户所
7、拥有的所有视图信息。修改视图l修改视图:修改视图:alter view 视图名视图名 compile;功能:只是重新编译一下视图,来检查基功能:只是重新编译一下视图,来检查基本本sql语句有效性。语句有效性。删除视图l格式:格式:drop view 视图名;视图名;1.2 索引l定义:根据表中的一列或多列的值快速访问表中行定义:根据表中的一列或多列的值快速访问表中行的结构。的结构。l目的:快速查询。目的:快速查询。l特点:特点:-索引块小,比对应的数据库表小的多。索引块小,比对应的数据库表小的多。-查询快,表中元组的增加不影响索引性能。查询快,表中元组的增加不影响索引性能。-自动维护,索引与表
8、具有直接对应关系,如果数据库记录自动维护,索引与表具有直接对应关系,如果数据库记录顺序发生改变,索引表的存储顺序也自动调整。顺序发生改变,索引表的存储顺序也自动调整。-独立于数据,索引在任何时间都可以删除和重建,不影响独立于数据,索引在任何时间都可以删除和重建,不影响应用程序。应用程序。-多索引,可以在一个表的多个字段上建立索引。多索引,可以在一个表的多个字段上建立索引。索引的使用规则l记录少可不建记录少可不建l一个表不要建太多索引。一个表不要建太多索引。l访问频繁的列,建索引。访问频繁的列,建索引。创建索引l格式:格式:create unique index 模式名模式名.索引名索引名 on
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Oracle 对象语句1 对象 语句
限制150内