我们有以下要求:
表1:复合主键version, id
------------------------------------
version id col1 coll2 active
------------------------------------
1 123 'A' 'B' 'N'
2 123 'C' 'D' 'Y'
1 124 'E' 'F' 'Y'
Run Code Online (Sandbox Code Playgroud)
现在,table1对于给定的任何插入和更新id,应使用以下属性(由触发器派生)创建新行:
Version对于给定id和,应该增加1active列设置为Y)例如
INSERT INTO table1(id, col1, col2) VALUES (123, 'X', 'Y');
------------------------------------
version id col1 coll2 active
------------------------------------
1 123 'A' 'B' 'N'
2 123 'C' 'D' 'N'
3 123 'X' 'Y' 'Y'
1 124 'E' 'F' 'Y'
Run Code Online (Sandbox Code Playgroud)
第3行已创建
UPDATE …Run Code Online (Sandbox Code Playgroud)