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


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...

面试题 相关文章推荐
一套PHP的笔试题
May 31 面试题
C语言变量的命名规则都有哪些
Dec 27 面试题
C++面试题目
Jun 25 面试题
Android面试题及答案
Sep 04 面试题
如何在Oracle中查看各个表、表空间占用空间的大小
Oct 31 面试题
ASP.NET中的身份验证有那些
Jul 13 面试题
名词解释型面试题(主要是网络)
Dec 27 面试题
abstract 可以和 virtual 一起使用吗?可以和 override 一起使用吗?
Oct 15 面试题
如何在C# winform中异步调用web services
Sep 21 面试题
配置管理计划的主要内容有哪些
Jun 20 面试题
几个MySql的面试题
Apr 22 面试题
同步和异步有何异同,在什么情况下分别使用他们?
Dec 28 面试题
阿里巴巴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之字符串变相相减的代码
2007/03/19 PHP
使用PHP 5.0创建图形的巧妙方法
2010/10/12 PHP
thinkphp中html:list标签传递多个参数实例
2014/10/30 PHP
php中file_get_contents与curl性能比较分析
2014/11/08 PHP
php导出生成word的方法
2015/12/25 PHP
js实现屏蔽默认快捷键调用自定义事件示例
2013/06/18 Javascript
javascript ajax的5种状态介绍
2014/08/18 Javascript
jQuery动态修改超链接地址的方法
2015/02/13 Javascript
jquery插件NProgress.js制作网页加载进度条
2015/06/05 Javascript
使用Curl命令查看请求响应时间方法
2016/11/04 Javascript
JavaScript中校验银行卡号的实现代码
2016/12/19 Javascript
学好js,这些js函数概念一定要知道【推荐】
2017/01/19 Javascript
Vue.js实现表格动态增加删除的方法(附源码下载)
2017/01/20 Javascript
Vue仿手机qq的实例代码(demo)
2017/09/08 Javascript
JS匿名函数和匿名自执行函数概念与用法分析
2018/03/16 Javascript
LayUI表格批量删除方法
2018/08/15 Javascript
基于 jQuery 实现键盘事件监听控件
2019/04/04 jQuery
JavaScript canvas仿代码流瀑布
2020/02/10 Javascript
python中 ? : 三元表达式的使用介绍
2013/10/09 Python
python协程用法实例分析
2015/06/04 Python
Python学习小技巧之列表项的推导式与过滤操作
2017/05/20 Python
python爬取拉勾网职位数据的方法
2018/01/24 Python
PyQt打开保存对话框的方法和使用详解
2019/02/27 Python
Python代码需要缩进吗
2020/07/01 Python
Python中bisect的用法及示例详解
2020/07/20 Python
Pycharm新手使用教程(图文详解)
2020/09/17 Python
荷兰手表网站:Watch2Day
2018/07/02 全球购物
FC-Moto西班牙:摩托车手最大的购物场所之一
2019/04/11 全球购物
会计学专业学生的求职信范文
2014/01/27 职场文书
商场促销活动策划方案
2014/08/18 职场文书
秋冬农业生产标语
2014/10/09 职场文书
2014年政务公开工作总结
2014/12/09 职场文书
学生考试舞弊检讨书
2015/01/01 职场文书
小鞋子观后感
2015/06/05 职场文书
全国劳模先进事迹材料(2016精选版)
2016/02/25 职场文书
nginx+lua单机上万并发的实现
2021/05/31 Servers