带有列的特定数据的sql触发器

时间:2010-03-01 11:08:10

标签: sql

我正在尝试在名为dbo.DHCPReport的数据库上创建一个触发器,该数据库有一个名为“returneduserclass nvarChar(128)”的列。我希望触发器在使用以下“NACDeny”填充returneduserclass列时发送电子邮件。 我的触发器如下所示,目前所有这些都是发生任何“插入”时的电子邮件

创建TRIGGER [dbo]。[email_IT8] ON [ReportStore]。[dbo]。[DHCPReport] 更新   如   DECLARE @returneduserclass nvarChar(128)   如果更新(returneduserclass) SELECT @ returneduserclass ='nacdeny'

我哪里错了?

2 个答案:

答案 0 :(得分:1)

首先,您是在尝试插入记录或记录更新时发送此电子邮件吗?它们是两个不同的东西......

如果在INSERT之后,您可以像捕获任何变量一样捕获新行并进行查询: REFERENCING NEW AS N
IF N.Returneduserclass = 'nacdeny' then
do stuff
End if

答案 1 :(得分:0)

SQL触发器对我来说非常非常新,所以如果我的任何术语错误就道歉!我插入数据后我就读完了。如果是这种情况,触发器中的约有“新参考”  如果N.Returneduserclass ='nacdeny'“ 插入?

是否存在任何sql现有触发器?我确实用插入替换了第一个“更新”,只是为了测试等关闭触发器。另外,第二个“更新”是否应该是“插入”?如果我尝试它会带来错误。

谢谢