我正在尝试创建具有以下功能的 db2 触发器...
当一条记录插入/更新到 Table1 中时,将同一条记录插入/更新到 Table2 中。问题是,Table1 有 11 列,Table2 有 5 列。Table2 中的 5 列与 Table1 中的 5 列完全相同,但是,由于 Table1 有额外的 6 列,触发器如何知道我想将 11 个特定列中的哪 5 个插入/更新到 Table2 中?
例如:
表格1
MasterID SubMasterID 价格 位置类型 状态 联系方式 名字 联系方式 姓氏 联系方式 电子邮件 联系方式 州 联系方式 邮编
表2
MasterID SubMasterID 价格 位置类型
从上面的示例中,在插入/更新到 Table1 之后,我想将同一条记录插入/更新到 Table2 中,但是 Table2 中只有 5 列(意思是 MasterID、SubMasterID、Price、Location、Type)。
这实际上可以通过 Db2 中的触发器实现吗?
或者有人会建议写一段代码吗?
谢谢!任何帮助表示赞赏。
我试过像这样创建一个触发器(未经测试),
CREATE OR REPLACE TRIGGER "SCHEMA1"."TABLE1_TABLE2_INSERT" AFTER
INSERT
ON
SCHEMA1.TABLE1 REFERENCING NEW AS A
FOR EACH ROW MODE DB2SQL BEGIN ATOMIC
INSERT
INTO
SCHEMA2.TABLE2
(
"MasterID",
"SubMasterID",
"Price",
"Location",
"Type"
)
VALUES
(
a.MasterID,
a.SubMasterID,
a.Price,
a.Location,
a.Type
);
END
但是,我不确定此触发器如何专门识别 Table1 中的特定列以将其插入/更新到 Table2 中。