我有两张桌子:
Table A (id int pk, value nvarchar(10), version nvarchar(5))
Table B (id2 int pk, value2 nvarchar(20), TableAID int fk(tableA.id), version nvarchar(5))
样本数据为:
Table A
-------
id | value | version
1 a 1
2 b 1
Table B
-------
id | value | TableAID | version
1 c 1 1
2 d 1 1
现在,如果我在表 A 中插入带有新版本的新记录,我会得到以下信息:
Table A
-------
id | value | version
1 null 1
2 b 1
3 a 2
表 B 应如下所示:
Table B
-------
id | value | TableAID | version
1 c 3 1
2 d 3 1
(外键字段必须更改)。
如何做到这一点????我正在用游标填充数据和版本。
更新!
问题是我必须为表 A 中每个新版本的数据插入新行。我不允许删除旧版本,我必须让它们保持原样。新版本作为新数据插入,但相同数据的旧版本将其值更改为 null。
如果我在表 AI 中插入新版本的数据,也会获得该值的新 ID。所以我必须用那个新的 ID 更新表 B。