Heim > Fragen und Antworten > Hauptteil
Dies ist die Abfrage, die ich verwende
const dbQuery = INSERT INTO 任务(活动、类型、参与者、价格、链接、密钥、可访问性) VALUES ('${activity}','${type}','${participants}','${价格}','${link}','${key}','${accessibility}')
;
Dies ist die Fehlermeldung, die ich erhalte: „Es liegt ein Fehler in Ihrer SQL-Syntax vor; überprüfen Sie das Handbuch für Ihre MySQL-Serverversion auf die Verwendung in der Nähe von ‚key,accessibility) VALUES (‘Repaint a room in your house‘,‘recreational‘,‘1‘ Correct syntax) ,‘0 .' auf Zeile 1"
Der empfangene Schlüsselwert ähnelt „4877086“
Ich dachte, es handele sich um ein Datentypproblem in SQL, also habe ich versucht, bigint, varchar und int zu verwenden, bekam aber immer noch den gleichen Fehler. Habe auch versucht, den Schlüssel in eine Zahl umzuwandeln. Wenn ich den Schlüssel aus der Grammatik entferne, erhalte ich das Ergebnis perfekt. (Verwendung von Tableplus für MySql)
P粉6593785772023-09-15 20:13:00
“key”这个词是 MySQL 中的保留关键字。
避免将其用作列名称。
如果必须使用它,可以将其括在反引号 (`) 中以表明它是列名称而不是关键字。
const dbQuery = `INSERT INTO tasks (activity, type, participants, price, link, \`key\`, accessibility) VALUES ('${activity}', '${type}', '${participants}', '${price}', '${link}', '${key}', '${accessibility}')`;
检查这是否是导致您问题的原因。