多少库常见面试题总结

1. 数据库三范式是啊?

首先范式:表中每个字段都无克重复分开。

第二范式:满足第一范式并且表中的非主键字段都指让主键字段。

其三范式:满足第二范式并且表中的非主键字段必须休传递依赖让主键字段。

2. 呀是数据库事务?

事务有着四可怜特点:一致性、原子性、隔离性、持久性。

数据库事务是负:几独SQL语句,要么全部行成功,要么全部实行破产。比如银行转账就是事情的一枝独秀气象。

数据库事务的老三单常用命令:Begin Transaction、Commit
Transaction、RollBack Transaction。

3. 啊是视图?

视图实际上是在数据库中经过Select查询语句从多张表中领取的多单字段所做的虚拟表。

l 视图并无占物理空间,所以通过视图查询有之记录并非保存于视图中,而是保存在原表中。

l 通过视图可以本着点名用户隐藏相应的表字段,起至保护数量的用意。

l 于满足一定条件时,可以透过视图对原表中之笔录进行加删改操作。

l 创建视图时,只能用单条select查询语句。

4. 啊是索引?

目录是针对性数据库表中同列或多排的价进行排序的等同栽结构,使用索引可快速访问数据库表中的一定信息。

l 索引分为:聚集索引、非聚集索引、唯一索引等。

l 一摆设表可以起差不多个唯一索引和莫聚集索引,但极多只能有一个聚集索引。

l 索引好分包多列。

l 合理之创建索引能够提升查询语句之实施效率,但下降了新增、删除操作的快,同时为会见吃一定之数据库物理空间。

5. 什么是储存过程?

存储过程是一个预编译的SQL语句,优点是许模块化的计划,就是说就需要创建同次于,以后当拖欠次中尽管可以调用多次。如果某次操作需要执行多次SQL,使用存储过程较单纯SQL语句执行要赶早。

6. 什么是触发器?

触发器是同等蒙受非常规的存储过程,主要是透过波来点而被实践之。它可变本加厉约束,来保障数据的完整性和一致性,可以跟踪数据库内之操作从而不容许未经许可的创新和浮动。可以联级运算。如,某表上的触发器上含蓄对其它一个说明的数目操作,而拖欠操作以会招致该表触发器被硌。

7. 描写起同长达Sql语句:取出表A中第31届第40记录 (MS-SQLServer)

解1:select top 10 * from A where id not in (select top 30 id from A)

解2:select top 10 * from A where id > (select max(id) from (select
top 30 id from A )as A)

解3:select * from (select *, Row_Number() OVER (ORDER BY id asc)
rowid FROM A) as A where rowid between 31 and 40

8. 状有同样漫长Sql语句:取出表A中第31至第40记录 (Mysql)

select * from A limit 30, 10

9. 描绘有一致久Sql语句:取出表A中第31届第40记录 (Oracle)

select *

from (select A.*,

   row_number() over (order by id asc) rank

    FROM A)   

where rank >=31 AND rank<=40;

10. 于关系项目数据库被什么描述多对多之关联?

每当事关项目数据库中描述多针对性大多的涉及,需要树立第三摆数据表。比如学生选课,需要在学童信息表和学科信息表的底子及,再建立选课信息表,该表中存放学生Id和学科Id。

11. 呀是数据库约束,常见的牢笼有啊几种?

数据库约束用于保证数据库表数据的完整性(正确性和一致性)。可以由此定义约束\索引\触发器来保证数据的完整性。

完整来讲,约束好分为:

主键约束:primary key;

外键约束:foreign key;

唯约束:unique;

检查约:check;

空值约束:not null;

默认值约束:default;

12. 列举几种常用之聚合函数?

Sum:求和\ Avg:求平均数\ Max:求最好大值\ Min:求最好小值\ Count:求记录数

13. 什么是外搭、左外联接、右外联接?

l 内对接(Inner Join):匹配2张表中互相关联的笔录。

l 左外联接(Left Outer
Join):除了匹配2张表中并行关联的笔录外,还会见配合左表中剩下的笔录,右表中无匹配到的字段用NULL表示。

l 右外搭(Right Outer
Join):除了匹配2张表中互关联的笔录外,还见面配合配右表中剩下的笔录,左表中未匹配到的字段用NULL表示。

以认清左表和右表时,要依据表名出现在Outer Join的横位置关系。

14. 怎么样以去主表记录时,一并删除从表相关联的笔录?

设个别摆表存在预告外键关系,那么以去主键表的笔录时,如果从表有互相关联的笔录,那么将致去失败。

在概念外键约束时,可以又指定3栽去策略:一凡是以从发明记录一致并剔除(级联删除);二是将起表记录外键字段设置为NULL;三是用从今表记录外键字段设置为默认值。

级联删除示例:

alter table 从表名
add constraint 外键名
foreign key(字段名) references 主表名(字段名)
on delete cascade

15. 呀是游标?

游标实际上是均等栽能够从包括多漫长数据记录之结果集中每次取一修记下进行处理的体制。

游标的运用手续:

1. 定义游标:declare cursor 游标名称 for  select查询语句 [for
{readonly|update}]

2. 打开游标:open cursor

3. 打游标中操作数据:fetch… …   current of cursor

 

4. 停歇游标:close cursor

相关文章