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


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的最长数据库名,表名,字段名可以是多长
Apr 21 面试题
weblogic面试题
Mar 07 面试题
Java多态性的定义以及类型
Sep 16 面试题
杭州时比特电子有限公司SQL
Aug 22 面试题
Oracle性能调优原则
May 03 面试题
什么是唯一索引
Jul 05 面试题
C#公司笔试题
Mar 28 面试题
Shell编程面试题
May 29 面试题
客服端调用EJB对象的几个基本步骤
Jan 15 面试题
什么是GWT的Entry Point
Aug 16 面试题
华为python面试题
May 03 面试题
如何反序的迭代一个序列?how do I iterate over a sequence in reverse order
Feb 04 面试题
阿里巴巴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读取IMAP邮件
2006/10/09 PHP
PHP 无限分类三种方式 非函数的递归调用!
2011/08/26 PHP
一个PHP的ZIP压缩类分享
2014/05/04 PHP
php实现求相对时间函数
2015/06/15 PHP
7个鲜为人知却非常实用的PHP函数
2015/07/01 PHP
laravel5.1框架model类查询的实现方法
2019/10/08 PHP
在laravel中实现将查询的对象转换为多维数组的函数
2019/10/21 PHP
用js实现的仿sohu博客更换页面风格(简单版)
2007/03/22 Javascript
详谈nodejs异步编程
2014/12/04 NodeJs
JS实现带有3D立体感的银灰色竖排折叠菜单代码
2015/10/20 Javascript
通过点击jqgrid表格弹出需要的表格数据
2015/12/02 Javascript
浅谈js中用$(#ID)来作为选择器的问题(id重复的时候)
2017/02/14 Javascript
信息滚动效果的实例讲解
2017/09/18 Javascript
Bootstrap fileinput 上传新文件移除时触发服务器同步删除的配置
2018/10/08 Javascript
video.js 一个页面同时播放多个视频的实例代码
2018/11/27 Javascript
微信小程序封装自定义弹窗的实现代码
2019/05/08 Javascript
react-native聊天室|RN版聊天App仿微信实例|RN仿微信界面
2019/11/12 Javascript
python设置检查点简单实现代码
2014/07/01 Python
Python基于正则表达式实现文件内容替换的方法
2017/08/30 Python
python批量实现Word文件转换为PDF文件
2018/03/15 Python
python实现requests发送/上传多个文件的示例
2018/06/04 Python
python安装twisted的问题解析
2018/08/21 Python
基于wxPython的GUI实现输入对话框(1)
2019/02/27 Python
HTML5新控件之日期和时间选择输入的实现代码
2018/09/13 HTML / CSS
米兰网婚纱礼服法国网上商店:Milanoo法国
2016/08/20 全球购物
美国著名的婴儿学步鞋老品牌:Robeez
2016/08/20 全球购物
美国孕妇装品牌:Destination Maternity
2018/02/04 全球购物
欧洲顶级体育电子商务网站:SportsShoes.com
2018/03/27 全球购物
汉语专业应届生求职信
2013/10/01 职场文书
学雷锋活动倡议书
2014/08/30 职场文书
九一八事变纪念日演讲稿
2014/09/14 职场文书
运动会广播稿150字(9篇)
2014/09/20 职场文书
村党建工作汇报材料
2014/11/02 职场文书
2014年大学生工作总结
2014/11/20 职场文书
2019新学期家长会工作计划
2019/08/21 职场文书
使用numpy实现矩阵的翻转(flip)与旋转
2021/06/03 Python