Sql server SQL Server触发器,仅在其他数据库中存在时更新

Sql server SQL Server触发器,仅在其他数据库中存在时更新,sql-server,Sql Server,我有一个扳机,效果很好。但是,我发现如果使用应用程序GUI更新一个项目,触发器将不允许它在GUI中工作,除非我在触发器更新的多个数据库中创建该项目 基本上,我希望触发器运行,但如果其他3个数据库中不存在相同的UID,则会出错或停止触发器更新 这是我现在的触发器 SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO ALTER TRIGGER [dbo].[trgSecPIN] ON [dbo].[cat_validation] FOR UPDATE

我有一个扳机,效果很好。但是,我发现如果使用应用程序GUI更新一个项目,触发器将不允许它在GUI中工作,除非我在触发器更新的多个数据库中创建该项目

基本上,我希望触发器运行,但如果其他3个数据库中不存在相同的UID,则会出错或停止触发器更新

这是我现在的触发器

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

ALTER TRIGGER [dbo].[trgSecPIN] 
ON [dbo].[cat_validation]
FOR UPDATE
AS
    UPDATE [eqcas02].[dbo].[cat_validation]
    SET secondarypin = I.secondarypin
    FROM [eqcas02].[dbo].[cat_validation]
    JOIN inserted I ON [eqcas02].[dbo].[cat_validation].[name] = I.name

    UPDATE [eqcas03].[dbo].[cat_validation]
    SET secondarypin = I.secondarypin
    FROM [eqcas03].[dbo].[cat_validation]
    JOIN inserted I ON [eqcas03].[dbo].[cat_validation].[name] = I.name

    UPDATE [eqcas04].[dbo].[cat_validation]
    SET secondarypin = I.secondarypin
    FROM [eqcas04].[dbo].[cat_validation]
    JOIN inserted I ON [eqcas04].[dbo].[cat_validation].[name] = I.name
一旦我添加了NOCOUNT,一切都很好


一旦我添加了NOCOUNT,一切都正常。

在您的
更新之前检查
是否存在
sSo我希望在更新之前添加类似的内容?如果存在(从[eqcas02].[dbo].[cat_validation]中选择[name],其中[name]=[name]或这完全不正确?我发现了这一点。我缺少…
更新之前检查
是否存在
sSo我希望在更新之前添加类似的内容?如果存在(从[eqcas02]中选择[name])[dbo].[cat_validation]其中[name]=[name]或这完全不正确?我发现了这一点。我缺少…
SET NOCOUNT on
FOR UPDATE
AS
SET NOCOUNT on