我正在使用SQL Server 2008.我有存储过程,它(在某些情况下)在我的表中插入数据,每次打开窗口时都会从应用程序调用此存储过程。 SQL事件探查器显示如下
exec TEST.dbo.spInsertRecords @parameter
现在我想要的是在调用执行该存储过程时触发一个触发器。 可能吗?如果是,请分享语法示例。
答案 0 :(得分:1)
触发器设置在表上,如果你真的需要在调用你的程序时触发的东西(老实说我不明白为什么你可以修改程序来做你想要的任何行为),添加一些虚拟表(a日志表?),在该表上创建触发器(例如插入),并“触发”过程内的触发器(插入一行)。
答案 1 :(得分:0)
如果希望触发器执行某些代码,例如将记录写入日志。
将代码直接写到过程中。
如果要在所有过程之前或之后执行通用代码,请在执行过程的地方编写代码。
例如在PHP中:
odbc_exec(“在“ $ procedure_name” @parameters之前执行my_trigger_;
执行$ procedure_name @parameters;
在'$ procedure_name'@parameters之后执行my_trigger _;“)