为了'模拟'数据库中的继承,我决定使用所谓的Table-Per-Type模式(最近提出from StackOverflow)。我有一个用户拥有最常见的colums给所有用户,我有一个表开发人员的附加信息。此表用于存储有关其角色为开发人员的用户的一些其他信息。
用户的主键ID
,即开发人员表中的AUTO_INCREMENT
和ID
列,它本身就是PK本身,也是引用Users.ID
的FK。
我正在编写一个SQL查询,用一些测试数据填充我的表。试图添加新的Developer i遇到了问题:我不明白如何在表Users
和Developers
中插入新的deverloper-user,因为Users.ID是自动生成的,它必须等于开发人员.ID。
答案 0 :(得分:0)
不是答案,长评论
@Derp此功能特定于每个供应商,甚至是植入。在标准t-sql中做一些通用的sql程序以适应所有的胜利,并且有点不可能。
尝试这样的通用,只能逐个插入:
begin tran
insert table1
select top 1 @newId=IdentityColumn from table1 order by IdentityColumn desc
insert table2
commit