0

我有一些数据要插入到一个表中,该表是从 mysql 中另一个具有数据类型的表中检索的BINARY(20)

提取的数据在变量中$binary['hash'];

/l÷^8Ô]¿\µK<þeû

当我尝试使用如下所示插入另一个表PDO时,(列哈希BINARY(20)也是)

$q = $dbc -> prepare("INSERT INTO table VALUES (hash) VALUES (?)");
$q -> execute(array($binary['hash']));

我收到这样的错误,

您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 'VALUES ('\0/l÷^8Ô]¿\µK<þeû')' 附近使用正确的语法

我注意到 的值$binary['hash']不同并且它没有插入!

我怎样才能得到这个工作?

4

2 回答 2

1

正确的sql语句应该是:

INSERT INTO table (hash) VALUES (?)

没有第一个VALUES关键字。

于 2012-05-27T15:23:09.547 回答
0

您的 SQL 语句中有values两次,这就是错误

INSERT INTO table VALUES (hash) VALUES (?)

应该是

INSERT INTO table (hash) VALUES (?)
于 2012-05-27T15:34:11.240 回答