麻烦这个简单的触发器脚本

时间:2010-11-10 12:29:15

标签: sql-server tsql

create trigger personInsertTrigger on dbo.Person for INSERT
as
declare tmpPersonID INT
set tmpPersonID = (select ID from INSERTED)

insert into dbo.PersonRecords values (tmpPersonID, now())

我收到以下错误:

  

Msg 155,Level 15,State 2,Procedure   personInsertTrigger,第3行'INT'是   不是公认的CURSOR选项。消息   195,第15级,国家10,程序   personInsertTrigger,第6行'现在'是   不是公认的内置功能   名。

任何人都可以帮我完成这个小脚本吗?我希望它保存Person的ID以及它插入第二个名为PersonRecords的表的时间。

感谢。

2 个答案:

答案 0 :(得分:1)

使用@代表变量 -

declare @tmpPersonID INT

局部变量必须以@开头。游标不使用@符号,因此它将您的声明解释为游标而不是变量。

我认为您需要使用now()

而不是getdate()

答案 1 :(得分:0)

变量需要以@

开头

更改

declare tmpPersonID INT 

declare @tmpPersonID INT 

看看

DECLARE @local_variable (Transact-SQL)