gpt4 book ai didi

php - 链接 SQL 表 - 问题

转载 作者:行者123 更新时间:2023-11-29 10:23:41 25 4
gpt4 key购买 nike

我想将两个 SQL 表链接在一起,这两个表都通过 HTML/PHP 表单输入数据。第一个表是用户将所有详细信息输入表单(称为系统)的地方,第二个表是用户填写另一个预订表单(称为用户)的地方。如何将这些表链接在一起?显示用户预订。我不知道如何让预订表/表单将用户的用户名回显到第二个表中以将它们链接在一起?我知道这没有意义,但非常感谢一些帮助!!!

以下是第一个表的用于创建用户帐户的 SQL:而且,这是创建预订的 SQL?:

</form>
</body>
</html>

<br></br>


</div>
</div>

</div>


</body>
</html>

以下代码将用户为预订表单(系统表)输入的内容链接到 SQL 数据库。

最佳答案

可以使用 JOIN 将两个表“链接”在一起。如果您想要列出预订(详细信息表中的行)以及一些用户信息,您可以使用 LEFT OUTER JOIN 或 INNER JOIN。 (不同之处在于,使用 LEFT OUTER JOIN,您可以获得所有预订,即使其中一些预订没有用户。使用 INNER JOIN,您只能获得用户中存在相应行的预订。)

如果一个列在两个不同的表中具有相同的名称,您可以使用users.user_uid和details.user_uid来引用它们。

SELECT details.*, user.email, user.first, user.last
FROM details LEFT OUTER JOIN user ON user.user_id = details.user_uid;

然后您可能想添加 WHERE 或 ORDER BY,也许还有 LIMIT。

在users表中,有一个user_id(INT)和一个user_uid(VARCHAR)。详细信息表有一个 user_uid (INT)。在示例中,我假设详细信息表中的 user_uid 对应于用户表中的 user_id,因为它们都是 INT。您可能想要更改某些列的名称以使其不那么困惑。假设您要将 users.user_uid 重命名为“username”。

此外,您应该在 user_id 和用户名上添加唯一索引,假设您希望它们都是唯一的。对于 INT,我建议您将其作为自动递增数字和用户名的主键,只是一个唯一键:

CREATE TABLE users (
user_id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,
... ,
username VARCHAR(20) NOT NULL UNIQUE,
...
);

在详细信息表中,您可能还希望将 ID 设置为带有 AUTO_INCRMENT 的主键。

唯一的键可以保证不存在重复项,并且还可以提高对这些列的查找效率。

关于php - 链接 SQL 表 - 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48733624/

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