触发器与存储过程的区别是什么?

 我来答
床前明月儿
高能答主

2023-07-01 · 探索生活中的另一种可能
床前明月儿
采纳数:101 获赞数:171950

向TA提问 私信TA
展开全部

一、指代不同

1、存储过程:是在大型数据库系统中,一组为了完成特定功能的SQL 语句集。

2、触发器:是SQL server 提供给程序员和数据分析员来保证数据完整性的一种方法。

二、特点不同

1、存储过程:存储在数据库中,一次编译后永久有效,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行。

2、触发器:是与表事件相关的特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发,比如当对一个表进行操作( insert,delete, update)时就会激活执行。

三、作用不同

1、存储过程:局时存储过程,以两个井字号(##)号开始,则该存储过程将成为一个存储在tempdb数据库中的全局临时存储过程,全局临时存储过程一旦创建,以后连接到服务器的任意用户都可以执行它,而且不需要特定的权限。

2、触发器:可用于强制引用完整性,以便在多个表中添加、更新或删除行时,保留在这些表之间所定义的关系。然而,强制引用完整性的最好方法是在相关表中定义主键和外键约束。


参考资料来源:百度百科-触发器

参考资料来源:百度百科-存储过程

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式