我正在使用PDO+SQLite运行以下SQL:
CREATE TABLE default_field_values (intfield INT NOT NULL, floatfield FLOAT NOT NULL, boolfield TINYINT NOT NULL);
CREATE INDEX somename ON default_field_values (intfield,floatfield);
当将其提供给 PDO::query 方法时,会创建一个表,但它最终没有索引。当通过sqlite3 CLI运行SQL时,它会按预期工作。运行 MySQL 时也不会发生此问题。
文档说:
PDO::query() 执行一个 SQL 语句
它确实执行了一个SQL语句。
PDO 不是 CLI。如果要执行多个语句,请使用多个query
调用。