gpt4 book ai didi

php - 使用PHP时Mysql "No Database selected"错误

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

如果 Mysql 中的表 2 中不存在 ID,我将尝试从表 1 中删除。

在Phpmyadmin中使用sql查询

DELETE t1 FROM db.table1 t1 LEFT JOIN db.table2 t2 ON t1.id = t2.id WHERE t2.id IS NULL

它可以完美地从 table1 中删除在 table2 中找不到的行!

但是,当在 PHP 中使用相同的 sql 时,

mysqli_query($connection,"DELETE t1 FROM db.table1 t1 LEFT JOIN db.table2 t2 ON t1.id = t2.id WHERE t2.id IS NULL") or die(mysqli_error($connection));

它抛出错误未选择数据库。我已经验证并且我的连接已使用主机、用户名和密码正确定义。

$connection = @mysqli_connect($host,$用户名,$password);

我认为 $connection 不是问题,因为在它之前/之后还有其他查询,它们都工作得很好!我做错了什么?

最佳答案

我终于成功了!我仍然无法理解为什么 PHP 查询失败。不管怎样,查询本身很简单,我从SO问题Delete all rows which has no id existing in another table复制而来。 。

我可以看出使用别名是有问题的,最后我使用了带有数据库的完整表名并且它工作得很好。我很确定可以使用别名,只是我不是这方面的专家!

mysqli_query($connection,"DELETE db.table1 FROM db.table1 LEFT JOIN db.table2 ON table1.id = table2.id WHERE table2.id IS NULL");

关于php - 使用PHP时Mysql "No Database selected"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40924316/

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