如果我写这样的查询:
$conn = new mysqli($db_host, $db_username, $db_password, $db_database);
$conn -> query ("
DROP TABLE IF EXISTS for_search;
CREATE TABLE IF NOT EXISTS for_search
(
id INT,
for_search TEXT
);
");
$conn -> close();
它不起作用,但如果我像这样重写它:
$conn = new mysqli($db_host, $db_username, $db_password, $db_database);
$conn -> query ("
DROP TABLE IF EXISTS for_search;
");
$conn -> query ("
CREATE TABLE IF NOT EXISTS for_search
(
id INT,
for_search TEXT
);
");
$conn -> close();
它会起作用的! 我想知道为什么我不能在 MySQLli 中编写多行查询?
在Mysqli中,您应该使用multi_query
来运行多个查询:
$conn = new mysqli($db_host, $db_username, $db_password, $db_database);
$conn -> multi_query ("
DROP TABLE IF EXISTS for_search;
CREATE TABLE IF NOT EXISTS for_search
(
id INT AUTOINCREMENT,
for_search TEXT
);
");
$conn -> close();