triggers - 2个数据库之间的Sql Server触发器

标签 triggers

我有2个数据库。其中一个名为 Test,有一个名为 Vehicles 的表。另一个名为 Test2 的表有一个名为 Clients 的表。

当我在 Test 中的 Vehicles 表上插入新记录时,我需要更新 Test2 中 Clients 表上的 NumVehicles 字段。

这可以使用触发器吗?

最佳答案

你需要类似的东西

USE Test;
GO
CREATE TRIGGER afterVehicleInsert ON Vehicles AFTER INSERT
AS
BEGIN 
  IF @@rowcount = 0 RETURN;

  UPDATE Test2.[schema_name(default schema is dbo)].Clients 
  SET NumVehicles = NumVehicles +1 -- or whatever it should be
  FROM Test2.[schema_name(default schema is dbo)].Clients c
  INNER JOIN inserted i ON ([your join condition])
END;  
GO

更新当前数据库和另一个数据库中的表之间的唯一区别是您需要使用 [db_name].[schema_name].[table_name] 引用“远程”表

关于triggers - 2个数据库之间的Sql Server触发器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6652286/

相关文章:

MYSQL创建触发器时出错

javascript - iPhone 在输入字段中触发键盘(HTML/Javascript)

mysql错误,在 ''附近使用正确的语法

postgresql - 比较函数中的 postgresql 枚举

java - 在 JPA 中,如何知道持久性异常是否是由特定数据库触发器引起的?

function - Postgres ON DELETE CASCADE 会在后续表上触发 ON DELETE 触发器吗?

MYSQL 触发器 - 如何存储计算字段的结果

php - mysql 删除/更新或在代码中处理(例如 PHP)

postgresql - 在表上添加触发器时出现 PSQLException 和锁定问题

sql - 编写 SQL 触发器以查找数字在列中出现的次数是否超过 X 次?