数据库实施工程师面试(实施工程师的数据库技术题)
下面是好好范文网小编收集整理的数据库实施工程师面试(实施工程师的数据库技术题),仅供参考,欢迎大家阅读!
常规技术面试题(数据库)
触发器的作用?
它可以强化约束,来维护数据的完整性和一致性,可以跟踪数据库内的操作从而不允许未经许可的更新和变化。可以联级运算。
什么是存储过程?用什么来调用?
存储过程是一个预编译的SQL语句,优点是允许模块化的设计,就是说只需创建一次,以后在程序中就可以调用多次。如果某次操作需要执行多次SQL,使用存储过程比单纯SQL语句执行要快。可以用一个“execute 存储过程名参数”命令来调用存储过程。
索引的作用?和它的优点缺点是什么?。
数据库的搜索引擎可以利用它加速对数据的检索。
索引可以是唯一的,创建索引允许指定单个列或者是多个列。
缺点是它减慢了数据录入的速度,同时也增加了数据库的尺寸大小。
主键和索引的区别?
1.主键时为了标识数据库记录唯一性,不允许记录重复,且键值不能为空,主键也是一个特殊索引;
2.数据表中只允许有一个主键,但是可以有多个索引;
3.使用主键数据库会自动创建主索引,也可以在非主键上创建索引,方便查询效率;
4.索引可以提高查询速度,它就相当于字典的目录,可以通过它很快查询到想要的结果,而不需要进行全表扫描;
5.唯一索引则标识该索引值唯一,可以由一个或几个字段组成,一个表可以有多个唯一索引。
什么是内存泄漏?
一般我们所说的内存泄漏指的是堆内存的泄漏。当应用程序用关键字new等创建对象时,就从堆中为它分配一块内存,使用完后由于某种原因程序未释放或无法释放,造成系统内存的浪费。导致程序运行速度减慢甚至系统崩溃等严重后果。
维护数据库的完整性和一致性,你喜欢用触发器还是自写业务逻辑?为什么?
我是这样做的,尽可能使用约束,如check,主键,外键,非空字段等来约束,这样做效率最高,也最方便。其次是使用触发器,这种方法可以保证,无论什么业务系统访问数据库都可以保证数据的完整新和一致性。最后考虑的是自写业务逻辑,但这样做麻烦,编程复杂,效率低下。
什么是事务?
事务就是被绑定在一起作为一个逻辑工作单元的SQL语句组,如果任何一个语句操作失败那么整个操作就被失败,进而回滚到操作前状态,或者是上个节点。为了确保要么执行,要么不执行,就可以使用事务。要将一组语句作为事务考虑,就需要通过ACID测试,即原子性,一致性,隔离性和持久性。
什么是锁?
在所有的DBMS中,锁是实现事务的关键,锁可以保证事务的完整性和并发性。与现实生活中锁一样,它可以使某些数据的拥有者,在某段时间内不能使用某些数据或数据结构。当然锁还分级别的。
什么叫视图?
视图是一种虚拟的表,具有和物理表相同的功能。可以对视图进行增,改,查,操作,视图通常是由一个表或者多个表的行或列的子集。它使得我们获取数据更容易,相比多表查询。
视图创建和使用语法?
1.首先判断是否存在
if exists (select * from sysobjects where name = '视图名')
drop view View_EdsProd
Go
2. 创建视图
create view View_EdsProd as select * from Tab_EdsProd where Mid>1(条件) go
3. 使用视图
select *from View_EdsProd
游标是什么?
游标是SQL 的一种数据访问机制。可以将游标简单的看成是查询的结果集的一个指针,可以根据需要在结果集上面来回滚动,浏览需要的数据。
你能向我简要叙述一下SQL Server 中使用的一些数据库对象吗?
表、索引、视图、存储过程、触发器、用户定义函数、数据库关系图、全文索引。
NULL是什么意思?
NULL(空)这个值表示UNKNOWN(未知):它不表示“”(空字符串)。不能把任何值与一个 UNKNOWN值进行比较,都会生产一个NULL值。您必须使用IS NULL操作符。
什么是索引,有哪些索引,具体怎么用?
索引是与表或视图关联的磁盘上结构,可以加快从表或视图中检索行的速度。索引包含由表或视图中的一列或多列生成的键。这些键存储在一个结构(B 树)中,使 SQL Server 可以快速有效地查找与键值关联的行。
索引分为聚集索引和非聚集索引。
在数据库系统中建立索引主要有以下作用ÿ