存储过程和触发器都是一组SQL语句集合,他们在数据库开发过程中,在对数据库的维护和管理等任务中,以及在维护数据库参照完整性等方面,具有不可替代的作用.而触发器是一种特殊的存储过程,存储过程独立于表,具有访问和操纵数据库数据的功能,使应用程序执行效率得到进一步提高.触发器也是T_SQL语句的集合,它与表密切结合,实现表中更为复杂的业务规则.
存储过程是以一个名字存储在数据库中的,经过预编译的T_SQL语句集合,可以独立执行或通过应用程序的调用来执行.
触发器是不由用户直接调用的,而是在对表或视图中数据进行update,insert或者delete操作时自动执行.一个表或视图可以有多个触发器,每个触发器可以包含复杂的SQL语句.数据库表之间的引用完整性约束,除了可以采用主键和外键的对应约束来实现之外,还可以使用触发器,从而实现更复杂的用户定义完整性约束.