2016-07-28 8 views
0

Ich ziehe meine Haare über diese. Ich habe mit einem MySQL-Server verbunden und ich versuche, eine Tabelle auf, es zu schaffen:MySQL CREATE TABLE "Sie haben einen Fehler in Ihrer SQL-Syntax" Fehler

CREATE TABLE order (
    order_id INT, 
    order_is_overnight BIT, 
    order_quantity INT, 
    order_amount DOUBLE, 
    order_timestamp DATETIME 
); 

Als ich das laufen erhalte ich:

Error: 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 'order (
     order_id INT, 
     order_is_overnight BIT, 
     order_quantity INT, 
     order_amou' at line 1 
SQLState: 42000 
ErrorCode: 1064 

Diese sehr vage Fehlermeldung der Welt, ähnlich einer Java Ausnahme, die sagt "Whoops, ging irgendwo etwas in Ihrem Code schief!"

Irgendwelche Ideen, wo ich schief gehe ?! Ich habe überprüft, und nochmals überprüft, und dies scheint eine vollkommen gültige/legale CREATE TABLE Aussage zu sein (mach dir keine Sorgen über Leistung, Indizes, Schlüssel, etc; das ist nur eine Dummy/Test-Tabelle).

+3

vergessen Sie nicht, dass Name umschließen ein reserviertes Wort – e4c5

+0

AHHHHHHHHHHHHH ..... Dank @ e4c5 (+1) – smeeb

Antwort

2

order ist ein reserviertes Wort, müssen Sie es in hinte

CREATE TABLE `order` (
    order_id INT, 
    order_is_overnight BIT, 
    order_quantity INT, 
    order_amount DOUBLE, 
    order_timestamp DATETIME 
); 
+0

Dank @ Ivan C. (+1). FWIW 'order' (in Anführungszeichen) funktionierte nicht, änderte es aber in ** Orders ** (Plural). Seltsam. – smeeb

+0

'order' ist ein reserviertes Wort, das wie folgt verwendet wird:' SELECT * FROM Tabelle ORDER BY ID ... BTW gebührenfrei, um meine Antwort als akzeptiert zu markieren :) –

+0

Ich fühle mich frei! Wenn SO mich lassen. Du kannst keine Antworten innerhalb eines bestimmten Zeitraums akzeptieren, wenn du eine Frage stellst ;-) – smeeb

Verwandte Themen