我正在尝试将UUID的二进制文件另存为表中的主键。
在从中删除破折号后,我正在使用UNHEX(REPLACE(UUID(),"-",""))
将UUID转换为二进制。在直接在phpMyAdmin上执行的SQL查询中,这非常完美。但是在SLIM php准备好的语句中,它给了我以下错误:
未捕获的错误:在布尔值上调用成员函数bind_param()。
$stmt = $this->conn->prepare("INSERT INTO profile(profile_id, profile_firstname, profile_lastname) values (UNHEX(REPLACE(UUID(),'-','')),?,?)");
$stmt->bind_param("ss", $profile_firstname,$profile_lastname);
$stmt->execute();
请注意,如果我写入任何静态值(即'123'
)而不是UNHEX(REPLACE(UUID(),'-',''))
,错误就会消失。