sql-server – 在SQL Server中创建触发器内调用存储过程
发布时间:2020-12-12 16:39:02 所属栏目:MsSql教程 来源:网络整理
导读:我有一个名为insert2Newsletter的参数存储过程 (@sex nvarchar(10),@f_name nvarchar(50),@l_name nvarchar(70),@email nvarchar(75),@ip_address nvarchar(50),@hotelID int,@maArt nchar(2)) 我想将这个存储过程称为插入式触发器.如何从插入中检索相应的字
我有一个名为insert2Newsletter的参数存储过程
(@sex nvarchar(10),@f_name nvarchar(50),@l_name nvarchar(70),@email nvarchar(75),@ip_address nvarchar(50),@hotelID int,@maArt nchar(2)) 我想将这个存储过程称为插入式触发器.如何从插入中检索相应的字段,如何在触发器中调用insert2Newsletter? 我没有成功尝试: SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TRIGGER RA2Newsletter ON [dbo].[Reiseagent] AFTER INSERT AS DECLARE @rAgent_Name nvarchar(50),DECLARE @rAgent_Email nvarchar(50),DECLARE @rAgent_IP nvarchar(50),DECLARE @hotelID int BEGIN SET NOCOUNT ON; -- Insert statements for trigger here Select @rAgent_Name=rAgent_Name,@rAgent_Email=rAgent_Email,@rAgent_IP=rAgent_IP,@hotelID=hotelID From Inserted EXEC insert2Newsletter '','',@rAgent_Name,@rAgent_Email,rAgent_IP,@hotelID,'RA' END GO thx很多为您的反馈…问候… 解决方法最后…set ANSI_NULLS ON set QUOTED_IDENTIFIER ON GO ALTER TRIGGER [dbo].[RA2Newsletter] ON [dbo].[Reiseagent] AFTER INSERT AS declare @rAgent_Name nvarchar(50),@rAgent_Email nvarchar(50),@rAgent_IP nvarchar(50),@retval int BEGIN SET NOCOUNT ON; -- Insert statements for trigger here Select @rAgent_Name=rAgent_Name,@rAgent_IP,'RA',@retval END (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |