【问题标题】:Creating trigger between two different schemas table in one DB?在一个数据库中的两个不同模式表之间创建触发器?
【发布时间】:2014-02-15 19:34:14
【问题描述】:

我一直在研究一个由两个模式名称组成的数据库,即前端和备份。在一个表名中的位置:

front.Details

    studID SemID GPA
    100     1     4
    200     2     3

另一个表名是:

backup.DetailsV
studID  DEPT SemID GPA

我需要在表前面创建一个触发器。插入所有行时的详细信息必须插入到表备份中。DetailsV 两次,deptC 列两次。

Table backup.DetailsV 中的输出应如下所示:

studID  DEPT SemID GPA
100      1     1    4
200      1     2    3
100      2     1    4
200      2     2    3 

如何在表 A 上创建触发器以插入两次 id 为 1 和 2 的触发器?

【问题讨论】:

    标签: sql-server-2008 tsql triggers sql-server-2012


    【解决方案1】:

    应该这样做:

    CREATE TRIGGER MyTrigger
    ON Front.Details
    AFTER INSERT
    AS
    BEGIN
       INSERT INTO backup.DetailsV (Dept, SemID, GPA)
       SELECT 1, SemID, GPA FROM INSERTED
       INSERT INTO backup.DetailsV (Dept, SemID, GPA)
       SELECT 2, SemID, GPA FROM INSERTED
    END
    

    请注意,我们从特殊的 INSERTED 表中选择了两次,并插入了两次,每次都使用所需的部门。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-08-15
      • 1970-01-01
      • 2011-08-07
      • 2018-04-18
      • 1970-01-01
      相关资源
      最近更新 更多