SQL prend en charge les requêtes saisies sur plusieurs lignes. La requête ne sera exécutée que si vous saisissez un point-virgule ;
. Vous devez également avoir terminé toutes les chaînes de caractères de votre requête.
Attention au copier-coller de requêtes avec des chaînes de caractères provenant d'un traitement de texte - les guillemets peuvent avoir été remplacés par des “guillemets intelligents”, ce qui risque de fausser votre requête.
Si vous avez saisi une requête non terminée, elle ne s'exécute pas, et c'est pourquoi la sortie de la saisie ne fonctionne pas - MySQL pense que vous êtes toujours au milieu d'une requête. L'invite de commande change pour montrer quelle entrée est nécessaire pour terminer la requête. Par exemple, une citation ou une double citation peut être nécessaire. C'est puissant et l'invite de commande est utile, mais j'ai trouvé cela déroutant jusqu'à ce que je lise les réponses et les commentaires sur ce fil de discussion.
lire la spécification ici
L'invite de commande de “niveau supérieur” est :
mysql>
Si vous voyez ceci, alors vous pouvez entrer une commande, la terminer par ; et appuyer sur entrée.
Si vous voyez une invite comme celle-ci :
'>
">
->
Alors MySQL attend que vous terminiez une chaîne par une citation ou une requête par un point-virgule.
Voici comment dire à MySQL d'annuler votre requête non terminée et de vous renvoyer à l'invite principale :
\c
Je pense que c'est plus sûr que de terminer et d'exécuter votre requête involontaire. Après cela, vous devriez être de retour à l'invite > et vous pouvez quitter avec :
exit