几道数据库的概念性面试题


Posted in 面试题 onMay 30, 2014
这是几道数据库的概念性面试题,有的面试题在之前收录的面试题里面已经出现过了,不过还是要拿来强化一下概念:
1、触发器的作用?
答:触发器是一种特殊的存储过程,它主要是通过事件来触发而被执行的。它的作用是可以强化约束,维护数据的完整性和一致性,也可以可以跟踪数据库内的操作从而不允许未经许可的更新和变化。也可以联级运算。如某表上的触发器上包含对另一个表的数据操作,而该操作又会导致该表触发器被触发。

2、什么是存储过程?如何来调用存储过程?
答:存储过程是一个预编译的SQL语句,他的优点是允许模块化的设计,也就是说只需创建一次,在该程序中就可以调用多次。例如某次操作需要执行多次SQL,就可以把这个SQL做一个存储过程,因为存储过程是预编译的,所以使用存储过程比单纯SQL语句执行要快。可以用一个命令对象来调用存储过程。

3、什么是内存泄漏?
答:一般我们所说的内存泄漏指的是堆内存的泄漏。堆内存是程序从堆中为其分配的,大小任意的,使用完后要显示释放内存。当应用程序用关键字new等创建对象时,就从堆中为它分配一块内存,使用完后程序调用free或者delete释放该内存,否则就说该内存就不能被使用,我们就说该内存被泄漏了。

4、什么是事务?
答:事务就是被绑定在一起作为一个逻辑工作单元的SQL语句分组,如果任何一个语句操作失败那么整个操作就被失败,以后操作就会回滚到操作前状态,或者是上有个节点。为了确保要么执行,要么不执行,就可以使用事务。事务有四个特性,分别是:原子性,一致性,隔离性和持久性。

5、索引的作用?和它的优点缺点是什么?
答:索引就一种特殊的查询表,数据库的搜索引擎可以利用它加速对数据的检索。索引很类似与现实生活中书的目录,不需要查询整本书内容就可以找到想要的数据。索引可以是唯一的,创建索引允许指定单个列或者是多个列。缺点是它减慢了数据录入的速度,同时也增加了数据库的尺寸大小。

6、什么是锁?
答:锁是实现事务的关键,锁可以保证事务的完整性和并发性。与现实生活中锁一样,它可以使某些数据的拥有者,在某段时间内不能使用某些数据或数据结构。当然锁还分级别的。

7、维护数据库的完整性和一致性,你喜欢用触发器还是自写业务逻辑?为什么?
答:尽可能使用约束,如check、主键、外键、非空字段等来约束。这样做效率最高,也最方便。其次是使用触发器,这种方法可以保证,无论什么业务系统访问数据库都可以保证数据的完整新和一致性。最后考虑的是自写业务逻辑,但这样做麻烦,编程复杂,效率低下。
以上的答案不是很严谨,但是有利于理解,大家可以参考其他数据库的资料进行记忆。

Tags in this post...

面试题 相关文章推荐
Java中实现多态的机制是什么?
Dec 07 面试题
一套Java笔试题
Aug 20 面试题
2019年Java面试必问之经典试题
Sep 12 面试题
C语言面试题
May 19 面试题
编程实现当输入某产品代码则打印出该产品记录的功能
May 03 面试题
数据库笔试题
May 09 面试题
什么是Connection-oriented Protocol/Connectionless Protocol面向连接的协议/无连接协议
Sep 06 面试题
网络技术支持面试题
Apr 22 面试题
AJAX都有哪些有点和缺点
Nov 03 面试题
Python面试题集
Mar 08 面试题
JDBC操作数据库的基本流程是什么
Oct 28 面试题
介绍一下Java中标识符的命名规则
Feb 03 面试题
阿里巴巴Oracle DBA笔试题答案-备份恢复类
Nov 20 #面试题
Oracle性能调优原则
May 03 #面试题
ORACLE十问
Apr 20 #面试题
ORACLE第二个十问
Dec 14 #面试题
一道写SQL的面试题和答案
Nov 19 #面试题
一个SQL面试题
Aug 21 #面试题
存储过程和sql语句的优缺点
Jul 02 #面试题
You might like
扩展你的 PHP 之入门篇
2006/12/04 PHP
php求正负数数组中连续元素最大值示例
2014/04/11 PHP
PHP+Mysql+jQuery中国地图区域数据统计实例讲解
2015/10/10 PHP
PHP的mysqli_thread_id()函数讲解
2019/01/24 PHP
php并发加锁问题分析与设计代码实例讲解
2021/02/26 PHP
js实现翻页后保持checkbox选中状态的实现方法
2012/11/03 Javascript
IE不支持getElementsByClassName最终完美解决方案
2012/12/17 Javascript
EasyUI实现第二层弹出框的方法
2015/03/01 Javascript
jquery表单对象属性过滤选择器实例分析
2015/05/18 Javascript
微信支付 JS API支付接口详解
2016/07/11 Javascript
微信小程序 实例应用(记账)详解
2016/09/28 Javascript
Vuex 入门教程
2018/01/10 Javascript
详解JavaScript事件循环机制
2018/09/07 Javascript
微信小程序实现弹出层效果
2020/05/26 Javascript
使用form-create动态生成vue自定义组件和嵌套表单组件
2019/01/18 Javascript
详解ng-alain动态表单SF表单项设置必填和正则校验
2019/06/11 Javascript
浅谈Vue为什么不能检测数组变动
2019/10/14 Javascript
浅谈vue 二级路由嵌套和二级路由高亮问题
2020/08/06 Javascript
Python中捕捉详细异常信息的代码示例
2014/09/18 Python
解决pip install xxx报错SyntaxError: invalid syntax的问题
2018/11/30 Python
Python在OpenCV里实现极坐标变换功能
2019/09/02 Python
python爬虫 正则表达式解析
2019/09/28 Python
python退出循环的方法
2020/06/18 Python
Python编写万花尺图案实例
2021/01/03 Python
HTML5中的进度条progress元素简介及兼容性处理
2016/06/02 HTML / CSS
基于HTML5的WebGL经典3D虚拟机房漫游动画
2017/11/15 HTML / CSS
详解如何通过H5(浏览器/WebView/其他)唤起本地app
2017/12/11 HTML / CSS
Java和Javasciprt的区别
2012/09/02 面试题
新东网科技Java笔试题
2012/07/13 面试题
农药学硕士毕业生自荐信
2013/09/25 职场文书
大学活动总结格式
2014/04/29 职场文书
医学生求职自荐书
2014/06/12 职场文书
2014年学校工会工作总结
2014/12/06 职场文书
仓库管理员岗位职责
2015/02/03 职场文书
离职证明格式样本
2015/06/12 职场文书
2016年妇联“6﹒26国际禁毒日”宣传活动总结
2016/04/05 职场文书