我有这个用MySQL Workbench制作的SQL:http://pastebin.com/T09Actyg
在MySQL控制台中手动执行代码时,一切都按预期工作。但是,当从PHP查询时,我收到此错误:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0; SET @OLD' at line 2
这基本上是我的PHP代码:
$sql_conn = new mysqli($conf->sql_host, $conf->sql_user, $conf->sql_pass, $conf->db_name);
$query_str = file_get_contents("setup/sql_setup.txt");
$sql_conn->query($query_str);
我不知道这里发生了什么。非常感谢所有帮助。
编辑:sql_setup.txt文件的内容是我链接到的pastebin。
答案 0 :(得分:2)
mysqli::query
一次只能进行一次查询:
http://www.php.net/manual/en/mysqli.query.php
您可以使用mysqli::multi_query
代替:
http://www.php.net/manual/en/mysqli.multi-query.php