1、limit语句
limit n;返回n条数据。
limit m,n;跳过m条数据,返回n条数据。
2、触发器的作用?
答:触发器是一种特殊的存储过程,主要是通过事件来触发而被执行的。它可以强化约束,来维护数据的完整性和一致性,可以跟踪数据库内的操作从而不允许未经许可的更新和变化。可以联级运算。如,某表上的触发器上包含对另一个表的数据操作,而该操作又会导致该表触发器被触发。
3、什么是存储过程?用什么来调用?
答:存储过程是一个预编译的SQL语句,优点是允许模块化的设计,就是说只需创建一次,以后在该程序中就可以调用多次。如果某次操作需要执行多次SQL,使用存储过程比单纯SQL语句执行要快。
调用:
可以用一个命令对象来调用存储过程。
可以供外部程序调用,比如:java程序。
4、索引的作用?和它的优点缺点是什么?
答:索引是一种单独的、物理的对数据库表中一列或多列的值进行排序的一种存储结构,数据库的搜索引擎可以利用它加快对数据的检索速度。它很类似于现实生活中书的目录,不需要查询整本书内容就可以找到想要的数据。缺点是创建索引和维护索引要耗费时间,这种时间随着数据量的增加而增加。索引需要占用物理空间。当对表中的数据进行增加、删除和修改的时候,索引也要动态的维护,这样就降低了数据的维护速度。
5、内存溢出和内存泄漏的区别?
答:内存泄露就是申请了一块内存以后,无法去释放掉这块内存,丢失了这段内存的引用;内存溢出就是申请的内存不够,撑不起我们需要的内存。
6、维护数据库的完整性和一致性,你喜欢用触发器还是自写业务逻辑?为什么?
答:我是这样做的,尽可能使用约束,如check, 主键,外键,非空字段等来约束,这样做效率最高,也最方便。其次是使用触发器,这种方法可以保证,无论什么业务系统访问数据库都可以保证数据的完整新和一致性。最后考虑的是自写业务逻辑,但这样做麻烦,编程复杂,效率低下。
7、什么是事务?什么是锁?
答:事务是数据库系统所执行的基本逻辑单元,是一系列相关数据库操作的集合(由一条或多条SQL语句所组成)。
锁:在所以的 DBMS中,锁是实现事务的关键,锁可以保证事务的完整性和并发性。与现实生活中锁一样,它可以使某些数据的拥有者,在某段时间内不能使用某些数据或数据结构。当然锁还分级别的。
8、什么叫视图?游标是什么?
答:视图是一种虚拟的表,具有和物理表相同的功能。可以对视图进行增,改,查,操作,视图通常是有一个表或者多个表的行或列的子集。对视图的修改会影响基本表。它使得我们获取数据更容易,相比多表查询。
游标:是对查询出来的结果集作为一个单元来有效的处理。游标可以定在该单元中的特定行,从结果集的当前行检索一行或多行。可以对结果集当前行做修改。一般不使用游标,但是需要逐条处理数据的时候,游标显得十分重要。