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


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

面试题 相关文章推荐
mysql_pconnect()和mysql_connect()有什么区别
May 25 面试题
PHP高级工程师面试问题推荐
Jan 18 面试题
Java多态性的定义以及类型
Sep 16 面试题
介绍Java的内部类
Oct 27 面试题
C语言中一个结构不能包含指向自己的指针吗
May 25 面试题
一个SQL面试题
Aug 21 面试题
托管代码(Managed Code)和非托管代码(Unmanaged Code)有什么区别
Sep 29 面试题
Linux Interview Questions For software testers
Jun 02 面试题
init进程的作用
Aug 20 面试题
JAVA程序设计笔试题面试题一套
Jul 28 面试题
火山动力Java笔试题
Jun 26 面试题
介绍下java.util.Arrays类
Oct 16 面试题
阿里巴巴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(6) 面向对象
2010/02/16 PHP
php中可能用来加密字符串的函数[base64_encode、urlencode、sha1]
2012/01/16 PHP
PHP static局部静态变量和全局静态变量总结
2014/03/02 PHP
Windows下的PHP 5.3.x安装 Zend Guard Loader教程
2014/09/06 PHP
PHP之将POST数据转化为字符串的实现代码
2016/11/03 PHP
PHP中的使用curl发送请求(GET请求和POST请求)
2017/02/08 PHP
针对thinkPHP5框架存储过程bug重写的存储过程扩展类完整实例
2018/06/16 PHP
Yii2框架中一些折磨人的坑
2019/12/15 PHP
使用Modello编写JavaScript类
2006/12/22 Javascript
学习ExtJS Window常用方法
2009/10/07 Javascript
JQuery Easyui Tree的oncheck事件实现代码
2010/05/28 Javascript
iframe如何动态创建及释放其所占内存
2014/09/03 Javascript
排序算法的javascript实现与讲解(99js手记)
2014/09/28 Javascript
JavaScript精炼之构造函数 Constructor及Constructor属性详解
2015/11/05 Javascript
跟我学习javascript的闭包
2015/11/16 Javascript
基于JQuery实现图片轮播效果(焦点图)
2016/02/02 Javascript
JS组件Bootstrap Select2使用方法解析
2016/05/30 Javascript
javascript 判断页面访问方式电脑或者移动端
2016/09/19 Javascript
Bootstrap 表单验证formValidation 实现表单动态验证功能
2017/05/17 Javascript
解决React Native端口号修改的方法
2017/07/28 Javascript
关于angular 8.1使用过程中的一些记录
2020/11/25 Javascript
Vue中强制组件重新渲染的正确方法
2021/01/03 Vue.js
python排序方法实例分析
2015/04/30 Python
通过Python来使用七牛云存储的方法详解
2015/08/07 Python
Python 正则表达式的高级用法
2016/12/04 Python
Python Requests库基本用法示例
2018/08/20 Python
Python英文文本分词(无空格)模块wordninja的使用实例
2019/02/20 Python
python将字母转化为数字实例方法
2019/10/04 Python
python运用pygame库实现双人弹球小游戏
2019/11/25 Python
3D动画《斗罗大陆》上线当日播放过亿
2021/03/16 国漫
美国最大的在线寄售和旧货店:Swap.com
2018/08/27 全球购物
英国领先的票务代理商之一:The Ticket Factory
2019/02/09 全球购物
班组拓展活动方案
2014/08/14 职场文书
高考升学宴答谢词
2015/01/20 职场文书
优质护理服务心得体会
2016/01/22 职场文书
利用python做数据拟合详情
2021/11/17 Python