Actualizado el 14-01-2007
versión para imprimir
El 'otro' prompt de mysql
En las distribuciones mysql la forma oficial de conectar con la base de datos es con el programa cliente en linea de comando mysql.
Se trata de una interfaz incómoda, que te obliga a repetir todo el comando si padeces algun error, ya que no tiene ninguna capacidad de edición.
Hay sin embargo una solución no muy conocida, que es la de usar mysqlc.exe, en lugar de mysql.exe.
mysqlc es una utilidad similar al prompt mysql, pero creada con el compilador gcc; antes de usarla comprueba que tienes en tu directorio mysql/bin/ los archivos mysqlc.exe y cygwinb19.dll; sin esta ultima libreria mysqlc no funcionará.
mysqlc tiene integrada una versión de la libreria linux readline que proporciona algunas capacidades de edición. Sin embargo su uso tiene algunos inconvenientes. No es el interface 'oficial' para windows, asi que puede suceder que no esté tan actualizado, o incluso que rechace algun comando SQL introducido recientemente. Otro problema es que se trata de una traslación de un programa linux, previsto por tanto para un sistema totalmente diferente, incluso a nivel de teclado. A título de ejemplo, en las combinaciones de teclas mostradas mas abajo, las combinaciones ESC + letra se corresponderían con el equivalente en linux metakey - letra
mysqlc se invoca de forma idéntica al otro prompt (mysql):
C:\WINDOWS>cd.. C:\>cd mysql C:\mysql>cd bin C:\mysql\bin>mysqlc -unombre_usuario -pcontraseña Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 9 to server version: 4.0.12-max-debug Type 'help' for help. mysql>
Comandos de edición
| teclas de edicion | uso |
| CTRL-A | mueve el cursor al principio de la linea |
| CTRL-E | mueve el cursor al final de la linea |
| CTRL-B | mueve el cursor un caracter hacia atrás |
| CTRL-F | mueve el cursor un caracter hacia delante |
| ESC-B | mueve el cursor al comienzo de la palabra actual o anterior |
| ESC-F | mueve el cursor al final de la siguiente palabra |
| CTRL-D | borra el caracter bajo el cursor |
| CTRL-H | borra el caracter antes del cursor |
| ESC-T | Cambia el orden de la palabra bajo el cursor: SHOW TABLE_ se convertiria en TABLE SHOW_ |
| CTRL-T | Cambia el orden de la letra bajo el cursor: UES se convertiria en USE |
| ESC-U | Convierte a mayusculas desde la posicion del cursor hasta el final de la palabra |
| ESC-L | Convierte a minusculas desde la posicion del cursor hasta el final de la palabra |
| auto complete | uso |
| TAB | Autocompletado de la palabra en curso. Ejemplos: sel TAB -> selected in TAB -> insert up -> update |
| ESC ? | muestra las posibles palabras a completar para elas letras ante el cursor |
| ESC * | inserta todas las posibles palabras dado el texto anterior al cursor. |
| historial | uso |
| CTRL P | inserta la linea anterior en el historial |
| CTRL N | inserta la linea siguiente en el historial |
| ESC < | inicio de la historia |
| CTRL R | busqueda hacia atras en el historial Esta busqueda completa las palabras que vas tecleando con el comando coincidente en el historial |
| CTRL S | busqueda hacia adelante en el historial |