gpt4 book ai didi

c# - 工作台的连接表和链接表之间有区别还是相同?

转载 作者:行者123 更新时间:2023-11-29 16:15:22 27 4
gpt4 key购买 nike

您好,我开始学习一些 C# 和 MySQL,并尝试制作 2 个或更多表来相互连接以形成关系数据库。

我查找了信息,发现有些人在 WorkBench 中进行设计,有些人使用连接,就像我在一些有关连接的教程中看到的那样。

我对一些没有得到很好解释的关键概念感到困惑。例如 WorkBench 中联接和链接表之间的区别。

它们是如何工作的?它们是一样的吗 ?WorkBench仅用于为数据库制定设计模式吗?

当我说外键和主键并将它们连接起来时,这被视为连接还是完全不同的概念并且具有不同的用途?

最佳答案

连接、外键和主键都是关系数据库中密切相关的概念。

主键唯一标识给定表中的行。

外键表示不同表中的主键

联接是一种从多个表中检索数据的方法。

我没有太多使用 SQL Workbench,但我的猜测是链接表是指包含多个外键的表,以在两个表之间创建“多对多”关系。

例如:

用户

CREATE TABLE User(
userId INT PRIMARY KEY,
username VARCHAR(40)
);

帖子

CREATE TABLE Post(
postId INT PRIMARY KEY,
postContents VARCHAR(max)
);

UserPost

CREATE TABLE UserPost(
userId INT FOREIGN KEY REFERENCES User(userId),
postId INT FOREIGN KEY REFERENCES Post(postId)
);

UserPost将是一个“链接表”,它将UserPost表链接在一起,以指示任何人发布的许多帖子用户可以拥有。

然后,您可以使用如下所示的 SQL 查询查找给定用户的所有帖子,使用 UserPostUser链接在一起>发布

SELECT u.username, p.postContents FROM User u
JOIN UserPost up ON up.userId = u.userId
JOIN Post p ON up.postId = p.postId

总而言之,链接表允许我们使用联接将多个表中的信息“联接”在一起。因此,链接表通常被称为“连接表”。请参阅this post有关连接表的更多详细信息。

关于c# - 工作台的连接表和链接表之间有区别还是相同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54854607/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com