我有一个要求,根据这个要求我必须创建一个中央登录系统。我们有两件事公司和品牌,每个都由表“公司”和“品牌”代表。
当公司注册时,会给出corporateID,当该公司下的用户注册时,有一个表corporateuser,其中corporateID是外键,CorporateUserID是主键。类似于品牌。
所以我们有CorporateUserId和BrandUserID。
现在我有一个名为RegisteredUsers的表,其中我想拥有公司和品牌用户.UserID是此表中的主键,它是corporateuser和Branduser的外键。
现在,当我输入corporateuser时,我会进入corporateuser和RegisteredUsers。当我在RegisteredUsers的userID中输入CorporateUserID时,会出现外键冲突错误。
我完全理解这个错误。我怎么能实现这一点。这个要求非常严格。请告诉解决方法
答案 0 :(得分:0)
您尝试做的事情并不完全清楚,但似乎您希望所有三个用户表的主键都相同。这不是严格的外键关系,但在您的应用程序中似乎是合理的。
您需要先在RegisteredUsers中分配userID,然后在创建企业用户或品牌用户时使用该密钥。然后,用户ID在整个系统中将是唯一的。
如果这不是您想要的,请使用表格布局编辑您的条目,以使问题更加清晰。
答案 1 :(得分:0)
如果您尝试将记录插入到具有关系conatraints的表中,则需要在一个SQL Transaction下进行所有插入。