【问题标题】:how to make FOREIGN KEY Relationship in Two table如何在两个表中建立 FOREIGN KEY 关系
【发布时间】:2016-07-11 08:35:51
【问题描述】:

我创建了名为 montage 的数据库名称。相同的数据库托管服务器。我无法备份服务器数据库。所以我是在本地创建的。我有两个名为

的表名
 1.TP_Users
 2.TP_Roles

字段下方的下表

 TP_Users 
 --------
 Id     PK, int, not null
 UserName   nvarchar(50), null
 UserEmail  nvarchar(50), null
 DisplayName nvarchar(50), null
 Password   nvarchar(50), null
 RoleId FK, int, not null        -------------->Foreign key this make Relationship in TP_Roles Id column
 IsActive   bit, not null
 ClientId   int, null

另一个表 TP_Roles 跟在这样的字段之后

 TP_Roles 
 --------
 Id PK, int, not null
 Role_Name  varchar(200), null
 IsActive   bit, null

在服务器数据库中我看到了关系表 我看到了喜欢关注

FK Name                             Parent tabl name  column_id Refrenced table name    column_id
    FK__Users_cop__RoleI__27AED5D5  TP_Users    RoleId  6      TP_Roles             Id  1 
    FK__Users_cop__RoleI__28A2FA0E  TP_Users    RoleId  6      TP_Roles             Id  1

我已经看到像上面这样的关系服务器数据库,但是当我创建与上面相同的本地数据库时,我如何创建本地数据库

【问题讨论】:

  • 我想你忘记了这个问题..
  • 我把我的疑问都发给了@sagi
  • 现在编辑了我的问题

标签: mysql sql-server asp.net-mvc database


【解决方案1】:

您可以使用ALTER TABLE DDL 语句添加外键约束:

ALTER TABLE TP_Users 
ADD CONSTRAINT FK_TP_Users_TP_Roles FOREIGN KEY (RoleId)     
    REFERENCES TP_Roles  (Id )     
    ON DELETE CASCADE -- optional   
    ON UPDATE CASCADE -- optional    
;    

【讨论】:

  • 谢谢你我会创建表并使用这个约束
  • 也可以在CREATE TABLE语句中指定外键约束......
  • 建表时可以指定外键约束。
  • 出现错误类似于此消息 1769,级别 16,状态 1,第 30 行外键“FK_TP_Users_TP_Roles”在引用表“TP_Users”中引用了无效列“RoleId”。消息 1750,级别 16,状态 0,行 30 无法创建约束或索引。查看以前的错误。
  • 使用类似 Roleid int FOREIGN KEY REFERENCES TP_Roles(Id) 创建
猜你喜欢
  • 2019-05-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-17
  • 1970-01-01
  • 2023-03-29
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多