SQL Server外键到多个表
发布时间:2021-01-25 09:55:50 所属栏目:MsSql教程 来源:网络整理
导读:我有以下数据库架构: members_company1(id,name,...);members_company2(id,...);profiles(memberid,membertypeid,...);membertypes(id,...)[ { id : 1,name : 'company1',... },{ id : 2,name : 'company2',... }]; 因此,每个配置文件属于某个成员,来自co
我有以下数据库架构: members_company1(id,name,...); members_company2(id,...); profiles(memberid,membertypeid,...); membertypes(id,...) [ { id : 1,name : 'company1',... },{ id : 2,name : 'company2',... } ]; 因此,每个配置文件属于某个成员,来自company1或company2,具体取决于membertypeid值 members_company1 ————————— members_company2 ———————————————— ———————————————— id ——————————> memberid <——————————— id name membertypeid name /| | | profiles | —————————— | memberid ————————+ membertypeid 我想知道是否可以在配置文件表中创建基于memberid和membertypeid对的引用完整性的外键来引用members_company1或members_company2表记录? 解决方法外键只能引用一个表,如 documentation(强调我的)中所述:
但是如果你想开始清理,可以创建一个@KevinCrowell建议的成员表,从两个members_company表中填充它并用视图替换它们.您可以在视图上使用INSTEAD OF触发器将更新重定向到新表.这仍然是一些工作,但它将是一种修复您的数据模型而不破坏现有应用程序的方法(当然,如果它在您的情况下是可行的) (编辑:淮北站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
站长推荐
热点阅读