高级别我有两个表需要镜像一些数据。我无法通过并更改所有代码以写入两者,所以我想我会使用SQL触发器将数据插入到第二个表中的任何时候。这是我被困的地方:
CREATE TRIGGER new_trigger_INSERT
ON old_table
FOR INSERT
INSERT INTO new_table (id, first_name, last_name)
VALUES () --This is where I'm lost, I need to insert some of the data from the insert that executed this trigger
任何帮助都表示赞赏,如果有更好的方法可以让我知道。
答案 0 :(得分:12)
使用' inserted '表:
CREATE TRIGGER new_trigger_INSERT
ON old_table
FOR INSERT
INSERT INTO new_table (id, first_name, last_name)
SELECT col1, col2, col3 FROM inserted
[PS:别忘了确保你的触发器处理多行...]
参考。 Create Trigger
答案 1 :(得分:1)
在触发器中,您有“已插入”和“已删除”表。在这种情况下,您只使用“inserted”表,但在更新触发器中,您同时使用两者。