Porque é que o ctrl-c não sai do modo de entrada mysql no Windows?
Porque disse ao MySQL para interpretar os seus comandos de saída como entrada válida.
O que torna o terminal MySQL difícil de compreender é que existem diferentes modos para citação simples, citação dupla, e modo normal.
Portanto, para sair do modo de entrada mysql, terá de fazer estes passos:
- sair do modo de aspas duplas.
- Sair do modo de aspas simples.
- Sair do modo mysql.
- Sair do modo mysql de volta ao terminal padrão.
Exemplo mais básico:
mysql> /version
->
->
->
-> \c
mysql> exit
Bye
C:\>
Nunca saiu do modo pré-definido no exemplo acima, pelo que os comandos de saída funcionam correctamente.
Exemplo 2 (é isto que o está a fazer tropeçar).
mysql> hello
->
-> look dash is on the left"
"> In doublequote mode now, because doublequote above
"> adding another doublequote breaks you out: "
-> look a single quote ' here
'> in single quote mode now.
'> get out, in, then out again with three singlequotes: '''
-> now it will listen to your escape code: \c
mysql> exit
Bye
C:\>
Enquanto estiver no modo de citação simples ou dupla, não são respeitadas as sequências de fuga. Mesmo Ctrl-C e Ctrl-D são ignorados nestes modos.
Em que um dos 26 universos Ctrl-C não pára um programa independentemente do modo? Talvez nunca se saiba. Bazinga.