我有一個問題:我有3個表格,Table A
,Table B
和Table C
。使用新的id值複製另一個表中的數據
Table A
是其ID列爲FK鍵的主表,其中ID列爲Table B
和Table C
。
我想複製每個表中的相同數據,並將這些複製的行插入到它自己的表中,新的ID爲table A
。
我們通常做
insert into table A (id, name, age)
select name, age from table A
這裏的新行得到一個新的ID,因爲id
列是自動遞增。
但是,當我們將Table B
的數據複製到Table B
本身時,我們如何從Table A
指定新的ID?這裏是FK鍵。
insert into table B (tab_B_Id, id, mark, subject)
select id, mark, subject
from tab B.
[id is the pk of `Table A` and FK to `Table B` and `Table C`]
- 如何插入值,新創建的ID從表格中的其它表?
- 有沒有什麼辦法,我們可以做到這一點,而無需指定 這兩個select列中的所有列名???
任何幫助將不勝感激。
'SCOPE_IDENTITY'只在插入單行時才起作用 - 它會返回範圍中標識列的最後一個值;它不處理多行插入 –