我在触发器中创建了一个光标,它不能正常工作。请帮我解决它SQL Server触发器的光标不起作用
Create trigger Posts_Raw_To_Queue_Trigger ON SendNotificationPostsRaw FOR INSERT
AS
BEGIN
DECLARE @PostID uniqueidentifier
DECLARE @UserID uniqueidentifier
DECLARE @ProfID int
DECLARE @Email nvarchar(100)
DECLARE @CreationTime datetime
DECLARE @SpecialityID int
SELECT @ProfID= ProfessionalID,@Email= Email from Professionals where [email protected]
SELECT @PostID = I.PostID,@UserID = I.UserID ,@CreationTime =I.CreationTime FROM INSERTED I
DECLARE post_relation_cursor CURSOR FOR select CategoryId from PostCategoryRelations where [email protected];
OPEN post_relation_cursor;
FETCH NEXT FROM post_relation_cursor INTO @SpecialityID
WHILE @@FETCH_STATUS = 0
BEGIN
INSERT INTO SendNotificationPostsQueue (UserID,PostID,SpecialityID,TemplateID,CreationTime,SendTime,JSONParameters) Values(@UserID,@PostID,1,1,'04/11/2013','04/11/2013','')
FETCH NEXT FROM post_relation_cursor INTO @SpecialityID;
END;
CLOSE post_relation_cursor;
DEALLOCATE post_relation_cursor;
END
如果我删除光标并插入虚拟值到SendNotificationPostsQueue
,它的工作原理。所以我的光标有问题...请告诉我光标为什么不起作用?
你是什么现在我的意思是如果你使用光标会发生什么。它给了什么结果 – 2013-04-11 12:17:35
看起来你在插入表中只有一行。这是错误的。不知道这是不是你的“不工作”的原因,但在任何情况下都是错误的。 – automatic 2013-04-11 12:19:04
我正在使用Sql Server Web Admin,所以我看不到任何错误。我无法调试 – 2013-04-11 12:19:25