1064;您的 SQL 语法有误;

1064; You have an error in your SQL syntax;

我有这个错误:

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 'n')' at line 1 INSERT INTO oc_url_alias (query, keyword) VALUES ('product_id=26834', 'Stick'n');

我的查询:

INSERT INTO oc_url_alias (query, keyword) VALUES ('product_id=26834', 'Stick'n')

我不知道该怎么办

你必须转义引号:

INSERT INTO oc_url_alias (query, keyword) VALUES ('product_id=26834', 'Stick\'n');

有关详细信息,请参阅 http://dev.mysql.com/doc/refman/5.7/en/string-literals.html

INSERT INTO oc_url_alias (query, keyword) VALUES ('product_id=26834', 'Stick\'n');

您可以使用双精度 ' 来指示字符串文字中的 apostrophe

CREATE TABLE  oc_ul_alias(`query` VARCHAR(100), keyword VARCHAR(100));

INSERT INTO oc_ul_alias(`query`, keyword) 
VALUES ('product_id=26834', 'Stick''n');

SqlFiddleDemo

试试 INSERT INTO oc_url_alias (query, keyword) VALUES ('product_id=26834', 'Stick''n');

你需要转义一些字符,查看mysql手册

MySQL 错误通知通常意味着错误实际上发生在近引用之前的字符处,因此您正在查看字符 before n')

您的错误通知在 SQL:

中给出了您的问题

INSERT INTO oc_url_alias (query, keyword) VALUES ('product_id=26834', 'Stick'n');

所以这个错误是由你的 Stick'n 中的额外单引号引起的,所以你需要转义前面有 \ 的字符。

 INSERT INTO oc_url_alias (query, keyword) VALUES ('product_id=26834', 'Stick\'n');