当前位置: 首页 > 知识库问答 >
问题:

如何引用外键表来引用另一个表?

韶英达
2023-03-14

我有两个表两个表名

1. TP_Users
2. TP_Roles
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)
IsActive (bit, not null) ------>Foreign Key Reference 
ClientId (int, null)
Id  PK, int, not null
Role_Name   varchar(200), null
IsActive    bit, null

共有1个答案

伯茂才
2023-03-14

您可以在用户表中添加forieng key约束,如下所示

create table TP_Users
(
....., --- column list here
constraint FK_TP_Users_RoleId foreign key(RoleId) references TP_Roles(Id)
)

然后,通过在相关字段上使用简单的内部联接,可以构建查询

select * 
from TP_Users
inner join TP_Roles on TP_Roles.Id = TP_Users.RoleId
 类似资料:
  • 我想将一个表中外键的确切数目引用到另一个表中的一个主键。例如,如果我们得到的确切数目为3,则一个主键应该只连接另一个表中的三个外键。我使用用户表存储用户详细信息,使用产品表存储用户购买产品的详细信息。如果用户表的主键是ID,而产品表的外键是通过用户ID列引用用户表的。一个用户id(用户表中的id列)应限制为产品表中三条记录的确切数量。简单地说,用户最多可以购买三个产品,不能超过三个。我可以在MyS

  • 问题内容: 我试图在其中一个表上创建外键,并在其他模式中引用表的列。 像这样的东西: 由于我获得了必要的赠款,因此效果很好。 现在,我想知道是否有原因不引用其他模式中的表,或者有什么需要注意的地方? 问题答案: 没问题。在表之间建立外键关系时,架构实际上没有任何影响。只要确保适当的人员具有您打算使用的架构所必需的权限即可。

  • 问题内容: 进行了一次面试,下面是表格和结构 有人问 “选择所有母亲” “选择那些是“约翰·史密斯”和“简”的孩子 我很困惑,因为我假设外键会像往常一样与其他表链接。但是那时我失败了。有人知道实际答案和原因吗? 问题答案: 这种数据结构称为“自引用表” 和

  • 问题内容: 我有一条语句需要写(用通用名称表示,因为这是为了工作)来更新表“ tUpd”中的列“ updCol”。tUpd还具有一个列“ linkCol”,该列存在于另一个表tOther中。tOther还有另一列“ idCol”。 我的问题是更新tUpd中行的updCol值,该值通过linkCol对应于具有给定idCol值的行。 我认为应该起作用的一种解决方案是: 但是,我担心这种方法会导致性能下

  • 问题内容: 我正在开发一个将用作其他应用程序的可扩展框架的应用程序。 基本类之一称为节点,节点具有内容。SQL表如下所示: TABLE节点(NodeId int,....等) 表格NodeContentRelationship(NodeId int,ContentType字符串,ContentId int) 开发人员可以扩展应用程序以创建自己的内容类型。 显然,从关系数据库的角度来看,这很不好,因

  • 问题内容: 我有一个非聚集索引要删除(它是聚集索引的副本)。但是,外键约束正在使用它。我希望能够确定哪个约束正在使用索引,因此我可以对其进行更新以使用主键索引。 当我尝试删除它时: 我收到一个错误: 不允许在索引’dbo.MyTable.idx_duplicate’上使用显式的DROP INDEX。它被用于FOREIGN KEY约束实施。 我尝试通过以下查询找到罪魁祸首,但没有运气: 问题答案: