gpt4 book ai didi

php - PHP/MySQL 插入问题

转载 作者:太空宇宙 更新时间:2023-11-03 10:24:27 24 4
gpt4 key购买 nike

如何向两个或多个表中插入数据?

目前我正在使用这个技巧。 (假设语法正确)

$Sql1 = "insert into user";
$Sql2 = "insert into files";
$Sql3 = "insert into messages";

query $Sql1
query $$ql2
query $Sql3

所以我正在使用这个,我需要优化。

此外,我认为我需要使用外键?但我不知道如何在 phpmyadmin 上执行此操作。

最后:

这就是我想要的。

向“user”表插入数据,然后自动向“messages”和“files”表插入数据也会有一个与用户相同的 ID。这就是为什么我在代码中使用 3 个查询。

请帮帮我。

提前致谢!

我的

最佳答案

使用多个查询是完全没问题的。

但是,您应该将 3 个查询包装到一个 transaction。也就是说,如果一个查询由于某种原因而失败,则可以回滚所有先前查询(如果有)的影响,以便您的数据库保持一致状态。

注意:MySQL 的 MyISAM 表无法进行事务处理。此外,您必须使用 PHP 的 Mysqli (或 PDO )能够使用交易。 (我假设您没有使用一些高级数据库抽象层。)

关于您关于外键的问题:据我所知,当您对数据库中的表使用 MyISAM 引擎时(我假设)没有区别,因为 MyISAM甚至不支持外键的显式建模。然而,InnoDB 等其他表引擎可以使用外键来检查某些约束,例如“消息必须始终与现有人员相关联”。

这里有一些关于外键的很好的例子:http://www.postgresql.org/files/documentation/books/aw_pgsql/node131.html

关于php - PHP/MySQL 插入问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7469694/

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