SQL unterstützt Abfragen, die als mehrere Zeilen eingegeben werden. Nur wenn Sie ein Semikolon ;
eingeben, wird die Abfrage ausgeführt. Außerdem müssen Sie alle Zeichenketten in Ihrer Abfrage beendet haben.
Achten Sie auf das Kopieren und Einfügen von Abfragen mit Zeichenketten aus einem Textverarbeitungspaket - Anführungszeichen können durch “intelligente Anführungszeichen” ersetzt worden sein, und das bringt Ihre Abfrage durcheinander.
Wenn Sie eine nicht beendete Abfrage eingegeben haben, wird sie nicht ausgeführt, und deshalb funktioniert das Tippen von exit nicht - MySQL denkt, dass Sie noch mitten in einer Abfrage sind. Die Eingabeaufforderung ändert sich und zeigt an, welche Eingabe zum Beenden der Abfrage erforderlich ist. Zum Beispiel kann ein Anführungszeichen oder ein doppeltes Anführungszeichen erforderlich sein. Das ist mächtig und die Eingabeaufforderung ist hilfreich, aber ich fand es verwirrend, bis ich die Antworten und Kommentare in diesem Thread gelesen habe.
lesen Sie die Spezifikation hier
Der ‘Top-Level’-Prompt ist:
mysql>
Wenn Sie dies sehen, können Sie einen Befehl eingeben, ihn mit ; abschließen und Enter drücken.
Wenn Sie eine Eingabeaufforderung wie diese sehen:
'>
">
->
Dann wartet MySQL darauf, dass Sie einen String mit einem Anführungszeichen oder eine Abfrage mit einem Semikolon abschließen.
So sagen Sie MySQL, dass es Ihre verpfuschte unterminierte Abfrage abbrechen und Sie zurück zum Hauptprompt bringen soll:
\c
Ich denke, das ist sicherer, als Ihre ungewollte Abfrage abzubrechen und auszuführen. Danach sollten Sie wieder zur Eingabeaufforderung > zurückkehren und können mit beenden:
exit