2011-04-22 10 views
1

MySqlで次のクエリが失敗するのはなぜですか?このエラーでMySql INSERTエラー

NHibernate: INSERT INTO UserSetting (userId, key, value) VALUES (?p0, ?p1, ?p2); ?p0 = ccda78da-689d-4d86-ba72-d65eaf281edf [Type: Guid (0)], ?p1 = 'Hello' [Type: String (5)], ?p2 = 'World' [Type: String (5)]

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 'key, value) VALUES ('ccda78da-689d-4d86-ba72-d65eaf281edf', 'Hello', 'World')' at line 1"}

答えて

4

keyは予約語です。

はこれを試してみてください:

INSERT INTO UserSetting (userId, `key`, value) VALUES (?p0, ?p1, ?p2) 
+0

@webwiseに:残念ながら、私はNHibernate' 'に精通していませんよ。オブジェクト名に予約されたキーワードは避けるのが最善です。 – Quassnoi