php - mysqli_query 返回 false,错误代码为 0,但查询成功

标签 php mysql codeigniter load-data-infile

我有大量数据是从 PHP 脚本生成的,需要插入到数据库中。我尝试了各种不同的解决方案,但目前的解决方案(我认为应该是最好的解决方案)是我将数据生成到一个 CSV 文件中,然后使用以下查询将其插入到数据库中:

LOAD DATA LOCAL INFILE 'myfile.csv' INTO TABLE t1 FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY "'"

我使用 CodeIgniter 作为 PHP 框架,在执行查询后我被重定向到一个错误页面,该页面只显示

A Database Error Occurred

Error Number: 0

没有错误信息或任何东西。

我已经遍历了代码,但我所能找到的只是 mysqli_query() 返回 false,稍后 mysqli_errno() 返回 0 和 mysqli_error( ) 返回一个空字符串。

但是,查询实际上已经成功,当我查看数据库时,我可以看到 CSV 文件中的所有数据都已成功插入。这种行为是可以预料的吗?如果是这样,我想我必须稍微破解 CodeIgniter 代码,或者直接调用 mysqli_query() 而不是通过框架。

我还在 MySQL Workbench 中运行了完全相同的查询,但没有收到错误消息。

最佳答案

当我意识到我没有连接到数据库时,我遇到了完全相同的问题。

我正在调用 require_once('connect.php'),但这是我在代码中第二次使用 require_once,所以 PHP 没有引入连接。

require_once 更改为 require 为我解决了这个问题。

关于php - mysqli_query 返回 false,错误代码为 0,但查询成功,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4681423/

相关文章:

php - Google Map API v3 - (1) map 暂时闪烁错误的地理编码 (2) 添加标记点击事件

php - 如何获取 SELECT OPTION 的选定值

php - Mysql 更新查询运行两次

php - CodeIgniter 是大型应用程序的明智选择吗?

php - 阅读页面上的特定帖子

php - Hangman php从数据库中生成新的随机单词

php - Facebook 喜欢的视频 uploader 在发布前生成缩略图

php - Ajax 方法 - 哪个更好?

mysql - 为什么我可以在 "select count(*) from table_name"上使用索引,但不能在 "select * from table_name"上工作?有什么区别吗?

mysql - CakePHP 3 分页器在 ORDER 子句中使用 FIELD()