0

好的,所以我目前正在使用 mysqli_real_escape_string 来转义我的 SQL 查询,然后再通过 PHP 将它们发送到 MySQL。然而,由于某种原因,我的查询没有得到处理,当我输出 MySQL 查询并将其粘贴到 PHPMyAdmin 时,它给出了以下错误:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE ind={A$RTkAIqah0J1N$Fqymnud9s5PwnWw2wC.Y02oDo4H3W8QJPoJ$6$KK8UearuUCDH$FQg' at line 1

现在,以下是我的查询:

INSERT INTO `db`.table(`colheader`) VALUES ('{\"hey\":[\"Hello world\",\"7\\/9\\/2013\"]}') WHERE ind='$6$RTkAIqah0J1N$Fqymnud9s5PwnWw2wC.Y02oDo4H3W8QJPoJ$6$KK8UearuUCDH$FQgSnLHIlkBOtDTzu9AuZIZTr6GS4Rzr.iW11041994'

现在,我知道分配给“ind”的字符串有一些问题,但是我尝试在每个句点和每个美元符号之前加上一个斜杠,但它仍然不起作用。我尝试将整个内容放在双引号中,甚至括号中。没有什么。谁能指出我明显缺少的东西?我查看了文档,似乎找不到任何东西。先感谢您!!

4

2 回答 2

1

WHERE用于过滤哪些记录将被您的查询影响或检索,以及INSERT服务器将全新的记录附加到表中。

AnINSERT永远不会影响现有记录,因此有一个WHERE子句是无稽之谈。INSERT不支持WHERE

如果您尝试编辑现有记录上的字段值,请UPDATE改用。

查看MySQL 参考手册以了解有关其用法的详细信息。

于 2013-07-10T02:08:52.207 回答
0

如果您尝试更新指定的索引使用

UPDATE `db`.table SET `colheader` = '{\"hey\":[\"Hello world\",\"7\\/9\\/2013\"]}' WHERE ind='$6$RTkAIqah0J1N$Fqymnud9s5PwnWw2wC.Y02oDo4H3W8QJPoJ$6$KK8UearuUCDH$FQgSnLHIlkBOtDTzu9AuZIZTr6GS4Rzr.iW11041994'
于 2013-07-10T02:01:54.027 回答