sql 常会面试题sql 理论题1.触发器的作用
答:触发器是一中特殊的存储过程,重要是通过事件来触发而被执行的
它可以强化约束,来维护数据的完整性和一致性,可以跟踪数据库内的操作从而不容许未经许可的更新和变化
可以联级运算
如,某表上的触发器上包含对另一种表的数据操作,而该操作又会导致该表触发器被触发
什么是存储过程
用什么来调用
答:存储过程是一种预编译的 SQL 语句,长处是容许模块化的设计,就是说只需创立一次,后来在该程序中就可以调用多次
假如某次操作需要执行多次 SQL,使用存储过程比单纯 SQL 语句执行要快
可以用一种命令对象来调用存储过程
和它的长处缺陷是什么
答:索引就一种特殊的查询表,数据库的搜索引擎可以运用它加速对数据的检索
它很类似与现实生活中书的目录,不需要查询整本书内容就可以找到想要的数据
索引可以是唯一的,创立索引容许指定单个列或者是多种列
缺陷是它减慢了数据录入的速度,同步也增长了数据库的尺寸大小
什么是内存泄漏
答:一般我们所说的内存泄漏指的是堆内存的泄漏
堆内存是程序从堆中为其分派的,大小任意的,使用完后要显示释放内存
当应用程序用关键字 new 等创立对象时,就从堆中为它分派一块内存,使用完后程序调用 free 或者 delete 释放该内存,否则就说该内存就不能被使用,我们就说该内存被泄漏了
维护数据库的完整性和一致性,你喜欢用触发器还是自写业务逻辑
答:我是这样做的,尽量使用约束,如 check,主键,外键,非空字段等来约束,这样做效率最高,也最以便
另一方面是使用触发器,这种措施可以保证,无论什么业务系统访问数据库都可以保证数据的完整新和一致性
最终考虑的是自写业务逻辑,但这样做麻烦,编程复杂,效率低下
答:事务就是被绑定在一起作为一种逻辑工作单元的 SQ