要根据 B 中的键获取表 A 中的所有记录,用英语表示,您希望表 A 中的记录具有与该表 B 键的连接记录(假设表 A_B 有两个外键列,(TabAFK 和 TabBFK)
Select * from TableA A
Where pK In (Select Distinct TabAFK From tableA_B
Where TabBFK = @TableBKeyValue)
其他方向也一样
Select * from TableB B
Where pK In (Select Distinct TabBFK From tableA_B
Where TabAFK = @TableAKeyValue)
要插入新记录,请根据需要在 TableA 和 TableB 中进行正常插入...插入连接表 (tableA_B) 只是两个主表中的两个 pk
Insert TableA (pk, [other columns]) Values(@pkValue, [other data)
Insert TableB (pk, [other columns]) Values(@pkValue, [other data)
-- 然后为每个存在的关联插入联接表...
Insert tableA_B (TabAFK, TabBFK) Values(@PkFromA, @PkFromB)