数据库常见面试题

1.三范式

属性唯一、记录唯一、表唯一

2.索引

索引是一个数据结构,用来快速访问数据库表格或者视图里的数据。在SQL Server里,它们有两种形式:聚集索引非聚集索引。

聚集索引是指数据库表行中数据的物理顺序与键值的逻辑(索引)顺序相同。一个表只能有一个聚集索引。

非聚集索引......

3.完整性约束

实体、参照、用户定义完整性

4.存储过程和触发器

存储过程:编译好的SQL语句

执行速度快;有一定安全性;允许模块化的设计,创建一次就可以调用多次。

可以用一个命令对象来调用存储过程。

触发器:触发器是一中特殊的存储过程,主要是通过事件来触发而被执行的。

--可以强化约束,来维护数据的完整性和一致性;

--可以跟踪数据库内的操作从而不允许未经许可的更新和变化;

5.事务和锁

事务:数据库操作的单元。四个特性:原子、一致、隔离、永久

锁:在DBMS中,锁是实现事务的关键,锁可以保证事务的完整性和并发性。与现实生活中锁一样,它可以使某些数据的拥有者,在某段时间内不能使用某些数据或数据结构。

6.视图和游标

视图:视图是一种虚拟的表,对视图的修改不影响基本表,数据库中只存放视图的定义。

游标:游标实际上是一种能从包括多条数据记录的结果集中每次提取一条记录的机制。游标充当指针的作用。尽管游标能遍历结果中的所有行,但他一次只指向一行。

--定义游标
--打开游标
--使用游标
--关闭游标
--释放游标

7.数据库三级模式:由内向外依次为 内模式、模式、外模式

--内模式(Internal Schema)

定义:也称存储模式(Storage Schema),它是数据物理结构和存储方式的描述,是数据在数据库内部的表示方式(例如,记录的存储方式是顺序存储、按照B树结构存储还是按hash方法存储;索引按照什么方式组织;数据是否压缩存储,是否加密;数据的存储记录结构有何规定)。

理解:

① 一个数据库只有一个内模式;

② 一个表可能由多个文件组成,如:数据文件、索引文件。

它是数据库管理系统(DBMS)对数据库中数据进行有效组织和管理的方法

其目的有:

② 为了减少数据冗余,实现数据共享;

② 为了提高存取效率,改善性能。

--模式(Schema)

定义:也称逻辑模式,是数据库中全体数据的逻辑结构和特征的描述,是所有用户的公共数据视图。

理解:

① 一个数据库只有一个模式;

② 是数据库数据在逻辑级上的视图;

③ 数据库模式以某一种数据模型为基础;

④ 定义模式时不仅要定义数据的逻辑结构(如数据记录由哪些数据项构成,数据项的名字、类型、取值范围等),而且要定义与数据有关的安全性、完整性要求,定义这些数据之间的联系。

--外模式(External Schema)

定义:也称子模式(Subschema)或用户模式,是数据库用户(包括应用程序员和最终用户)能够看见和使用的局部数据的逻辑结构和特征的描述,是数据库用户的数据视图,是与某一应用有关的数据的逻辑表示。

理解:

① 一个数据库可以有多个外模式;

② 外模式就是用户视图;

③ 外模式是保证数据安全性的一个有力措施。

数据库的二级映象功能和数据独立性

映象<==>对应关系 

外模式/模式映象 ==》保证逻辑独立性
定义在外模式描述中 
把描述局部逻辑结构的外模式与描述全局逻辑结构的模式联系起来 
当模式改变时,只要对外模式/模式映象做相应的改变,使外模式保持不变,则以外模式为依据的应用程序不受影响,从而保证了数据与程序之间的逻辑独立性,也就是数据的逻辑独立性。
 
模式/内模式映象==》保证物理独立性 
定义在模式描述中 
把描述全局逻辑结构的模式与描述物理结构的内模式联系起来 
当内模式改变时,比如存储设备或存储方式有所改变,只要模式/内模式映象做相应的改变,使模式保持不变

 

posted @ 2017-04-02 10:48  lp3318  阅读(142)  评论(0)    收藏  举报