Ho una serie di script per la creazione di uno schema, con un commento simile al seguente prima di ogni istruzione:Mysql errore 1064 ("Hai un errore nella sintassi SQL") attivate da SQL commenti
--------------------------------------------------------
-- Table TABLE_NAME
--------------------------------------------------------
quando eseguire lo script da mysql sulla linea di comando, ho un po 'di errori come il seguente:
ERROR 1064 (42000): 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 '------------------------------------------------------
------------------------' at line 1
(in realtà, ho un errore per ogni commento, nonostante il messaggio si riferisce sempre per la linea 1).
Per risolvere rapidamente il problema, ho semplicemente rimosso i commenti e lo script è stato eseguito senza problemi, ma sono rimasto sorpreso nel vedere un comportamento simile e non riuscire a trovare una domanda pertinente qui su StackOverflow. Qualcuno ha una spiegazione? Qualcuno ha mai osservato un comportamento così strano?
Sto eseguendo mysql 5.6.30, il valore predefinito per 5.6 su ubuntu in questo momento.
E, a differenza della sintassi Oracle, MySQL permette commenti '/ * in questo stile * /' e '- in questo style'. –
@OllieJones Anche '# in questo stile': D – Magisch
Ho accettato questa risposta come la più completa. Sono abituato a linee complete di trattini interpretati come commenti in SQL, quindi sono stato sorpreso di vedere che hanno sollevato errori. Informerò i fornitori del software che sto installando che il contenuto del loro software "mysql" in realtà non è compatibile con MySQL :) –