SQL中的存储过程和触发器之间的区别

存储过程是用PL / SQL编写的用于执行某些特定任务的一部分代码。用户可以显式调用存储过程 。这就像一个Java程序,它可以将一些输入作为参数,然后可以进行一些处理并可以返回值。

另一方面,触发器是一个存储过程,当发生各种事件(例如更新,插入,删除)时,它将自动运行。触发器更像是在特定事件上运行的事件处理程序。触发器不能接受输入,它们不能返回值。

序号扳机储存程序

1

基本的 

触发器是一个存储过程,在发生各种事件(例如更新,插入,删除)时会自动运行

存储过程是用PL / SQL编写的用于执行某些特定任务的一部分代码

2

        运行方法 

它可以根据事件自动执行 

可以由用户显式调用

3

参数 

不能将输入作为参数 

可以将输入作为参数 

4

事务报表

我们不能在触发器内使用事务语句

我们可以在存储过程中使用事务语句,如开始事务,提交事务和回滚

5

返回 

触发器无法返回值 

存储过程可以返回值