如何修改Trigger变量而不改变SQL Server中的完整触发器?

时间:2015-05-18 13:45:55

标签: sql-server

我在sql server中有一个触发器,它包含超过一千行代码,比如

CREATE TRIGGER [dbo].[xyz] ON [dbo].[abc]
INSTEAD OF UPDATE
AS
BEGIN
SET NOCOUNT ON;
--Here more then 100 field is there.
DECLARE @ErrMsg NVARCHAR(2000)
--
--



DECLARE @IsPublished    BIT
DECLARE @ParentVersionedTemplateID UNIQUEIDENTIFIER
--
--

现在我需要更改此触发器的某个字段的数据类型。一种可能的方法是复制并粘贴整个代码并使用 ALTER 命令并根据需要更改现有的数据类型。

但我想问一下,有没有其他方法可以在不删除并重新创建触发器或更改完整的触发器代码的情况下修改该触发器的参数?

1 个答案:

答案 0 :(得分:0)

SQL Server中没有办法改变触发器的一部分。您需要重写整个触发器(通过ALTER TRIGGER)。我最好的建议是使用SSMS,右键点击相关的Trigger,然后选择Script Trigger as Alter。这将是最少的努力。