我想要的只是通过 PHP 使用文件创建 2 个或更多表tables.sql。PHPcreate_db.php<?phprequire 'config.php';$mysqli = new mysqli(DB_HOST, DB_USER, DB_PASSWORD);/* check connection */if($mysqli->connect_errno){ echo "MySQL connection failed.<br>"; exit();}else{ echo "MySQL successfully connected.<br>";}// DB createif($mysqli->query('CREATE DATABASE IF NOT EXISTS '.DB_NAME.';') === TRUE){ echo "Database successfully created.<br>";}else{ echo "Error: ".$mysqli->errno.", ".$mysqli->error."<br>";}// DB selectif($mysqli->select_db(DB_NAME) === TRUE){ echo "Database successfully selected.<br>";}else{ echo "Error: ".$mysqli->errno.", ".$mysqli->error;}// Create tablesif($mysqli->query(file_get_contents('../sql/tables.sql')) === TRUE){ echo "Tables successfully created.<br>";}else{ echo "Error: ".$mysqli->errno.", ".$mysqli->error."<br>";}$mysqli->close();?>DB_HOST、DB_USER、DB_PASSWORD、DB_NAME 在 config.php 文件中定义PHP v7.4.7SQLtables.sqlCREATE TABLE IF NOT EXISTS `users` ( `id` int(11) NOT NULL auto_increment, `username` varchar(100) NOT NULL, `password` varchar(100) NOT NULL, PRIMARY KEY (`id`));CREATE TABLE IF NOT EXISTS `status` ( `status` varchar(100) NOT NULL, `IDtime` varchar(100) NOT NULL);如果我使用命令行将此tables.sql 文件直接上传到MySQL 服务器,它就可以工作。MySQL v8.0.20 MySQL 社区服务器 - GPL错误信息错误:1064,您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,了解在第 16 行的'CREATE TABLE IF NOT EXISTS status( varchar(100) NOT NULL, `IDt' 附近使用的正确语法status
1 回答

长风秋雁
TA贡献1757条经验 获得超7个赞
例子:
$result = $mysqli->query("SELECT * FROM reservations;SELECT * FROM reservations");
var_dump($result, $mysqli->error);
bool(false)
string(172) "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 'SELECT * FROM reservations' at line 1"
$result = $mysqli->multi_query("SELECT * FROM reservations;SELECT * FROM reservations");
var_dump($result, $mysqli->error);
bool(true)
string(0) ""
- 1 回答
- 0 关注
- 105 浏览
添加回答
举报
0/150
提交
取消