数据库对象基本概念(面试)

上一篇 / 下一篇  2011-03-04 15:50:50 / 个人分类:工作

1、定义:

1)、视图:

视图是从一个或几个基本表(或视图)导出的表。它与基本表不同,是一个虚表。数据库中只存放视图的定义,而不存放视图对应的数据,这些数据仍存放在原来的基本表中。所以基本表中的数据发生变化,从视图中查询出的数据也就随之改变了。

2)、索引:

 唯一索引,表明此索引的每一个索引值只对应唯一的数据记录。

聚簇索引,是指索引项的顺序与表中记录的物理顺序一致的索引组织。

3)、存储过程:

   就是命了名的PL/SQL块,可以被赋予参数,存储在数据库中,然后由另一个应用或者PL/SQL例程调用。

4)、游标:

SQL是面向集合的,一条SQL语句可以产生或处理多条记录,而主语言是面向记录的,一组主变量一次只能存放一条记录,为此嵌入式SQL引入了游标的概念,用游标协调两种不同的处理方式。游标是一个数据缓冲区,存放SQL语句的执行结果,每个游标区都有一个名字,用户可以通过游标逐一获取记录,并赋给主变量,交由主语言进一步处理。

5)、触发器:

   触发器是特定事件出现时,自动执行的代码块,类似于存储过程,但用户不能直接调用它们。

触发器的类型可划分为4种:数据操纵语言(DML)触发器、替代(INSTEAD OF)触发器、数据定义语言(DDL)触发器和数据库事件触发器。

6)、序列:

   序列是一个发布唯一数字的oracle对象,在需要时每次按1或一定数量增加。序列通常用于产生表中的唯一主键或唯一索引等。其主要的用途是生成表的主键值,可以在插入语句中引用,也可以通过查询检查当前值,或使序列增至下一个值。

7)、表空间:

表空间实质是组织数据文件的一种途径,Oracle就是通过表空间这个数据库对象完成对数据的组织的。在将数据插入Oracle数据库之前,必须首先建立表空间,然后将数据插入表空间的一个对象中。解释数据库、表空间、数据文件、表、数据的最好办法就是想象一个装满东西的柜子。数据库其实就是柜子,柜中的抽屉是表空间,抽屉中的文件夹是数据文件,文件夹中的纸是表,写在纸上的信息就是数据。

8)、事物:

事物是由相关操作构成的一个完整的操作单元,两次成功的COMMITROLLBACK之间的操作,称作一个事物。在一个事务内,数据的修改一起提交或撤销,如果发生故障或系统错误,整个事务也会自动撤销。

对数据库所做的一系列修改,在修改过程中,暂时不写入数据库,而是缓存起来,用户在自己的终端可以预览变化,直到全部修改完成,并经过检查确认无误后,一次性提交并写入数据库,在提交之前,必要的话所做的修改都可以取消。提交之后,就不能撤销,提交成功后其他用户才可以通过查询浏览数据的变化。

9)、分区表:

   如果一个表很大会降低查询的效率,并增加管理的难度,一旦发生磁盘损坏,可能整个表的数据都会丢失,恢复比较困难。创建分区把一个大表分成几个区(小段),对数据的操作和管理都可以针对分区进行,这样就可以提高数据库的运行效率,分区可以存在于不同的表空间上,提高了数据的可用性。

 

2、作用:

1)、视图:

提高数据访问的安全性,限制了用户访问全部行和列;

简化了对数据的查询,隐藏了查询的复杂性;

可以通过访问一个视图完成对多个表的访问;

通过视图的创建,用户可以通过视图访问同一表的不同部分。

视图能够简化用户的操作

视图使用户能以多种角度看待同一数据

视图对重构数据提供了一定程度的逻辑独立性

视图能够对机密数据提供安全保护

适当的利用视图可以更清晰的表达查询

2)、索引:

提高查询效率

3)、存储过程:

存储过程以命名的数据库对象形式存储于数据库中,因为代码不保存在本地,用户可以在任何客户机上登录数据库,调用或修改代码;

提高安全保证,只有授权或创建者才可以使用该存储过程;

其他程序可以调用存储过程,提高代码复用;

存储过程使用时只需要传递存储过程名和参数,大大降低了客户机与服务器间的数据量。

过程在服务器端运行,执行速度快。

过程执行一次后代码就驻留在高速缓冲存储器,在以后的操作中,只需从高速缓冲存储器中调用已编译代码执行,提高了系统性能。

确保数据库的安全。可以不授权用户直接访问应用程序中的一些表,而是授权用户执行访问这些表的过程。非表的授权用户除非通过过程,否则不能访问这些表。

自动完成需要预先执行的任务。过程可以在系统启动时自动执行,而不必在系统启动后再进行手工操作,大大方便了用户的使用,可以自动完成一些需要预先执行的任务。

 


TAG:

 

评分:0

我来说两句

Open Toolbar