gpt4 book ai didi

mysql - 设计器表关系与连接

转载 作者:行者123 更新时间:2023-11-30 00:19:27 25 4
gpt4 key购买 nike

我只是有一个关于 MySQL 的初学者小问题,其中包含关系和连接。

它们有什么区别?在我的 phpmyadmin 设计器部分中,我可以在表之间建立关系。这样表就可以通过“id”等方式相互链接

但是如果我在我的 php 代码中执行 join/left join...

例如:

$stmt = $db->prepare ("SELECT * FROM visitor 
LEFT JOIN host ON visitor.host_id=host.id
LEFT JOIN reason ON visitor.reason_id=reason.id
WHERE visitor.id = ?");
$stmt->bindParam(1, $lastid);
$stmt->execute();

这不正是我所做的吗?我现在问为什么需要将关系设置到phpmyadmin中?这样做有什么好处?

最佳答案

我怀疑你指的是外键。从技术上讲,您已经在连接(reason_id 字段)中使用了外键,但通过正式定义它们,它会创建完整性约束。这样做的优点是不可能意外插入具有无效reason_id的访问者,还可以指定删除行为以确保所有相关记录都得到适当清理。请注意,并非所有存储引擎都支持外键。

请参见此处:https://dev.mysql.com/doc/refman/5.6/en/create-table-foreign-keys.html

关于mysql - 设计器表关系与连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23359126/

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