我想熟悉使用mysqli paramatized查询。
他们有限制吗?它们仅对INSERT命令有效吗?
这可能有点极端,但我试图在create table命令上使用它。
$createTableSQL = "
CREATE TABLE IF NOT EXISTS ?(
? VARCHAR(128) NOT NULL,
completed BOOL DEFAULT 0,
expires INT NOT NULL,
PRIMARY KEY (?)
)";
$tableName = 'token_tracker';
$primaryKey = 'tokens';
$query = $this->_tokenDB->prepare($createTableSQL);
$query->bind_param( 'sss', $tableName, $primaryKey , $primaryKey );
$query->execute();
我收到的错误如下:
Uncaught Error: Call to a member function bind_param() on boolean
我做了一些搜索,似乎是查询失败,而mysqli_result对象是空的?
这是使用短程化查询的错误方法。
仅供参考:如果我只是对此进行直接查询,将变量嵌入到查询中,它将起作用。