Nota previa: Esta no es una review minuciosa, es mas bien un tibio comentario sobre mi experiencia de usuario en las ultimas semanas con la herramienta MySQL Workbench 5.2.31 sobre Ubuntu 10.10.
Mi trabajo con MySQL aun no ha llegado al nivel de complejidad que quisiera, ya que tambien trabajo con SQL Server, es propicia la ocasión para compartiles mis apreciaciones, respecto al Editor SQL (que antes fue MySQL Query Browser).
Si bien estoy muy acostumbrado a la linea de comando, éste no me permite guardar/recuperar un historial de consultas o advertirme de algún «horror», incluso ahora prefiero la linea de comando por que me cuesta menos «clicks» y pulsaciones del teclado. Pero cuando las cosas se ponen serias, o mas complejas, una herramienta como Workbenck se hace completamente necesaria.
Puedo resaltar las siguientes características que me agradan (o no tanto) y paso a comentarlas:
El Historial de consultas.
Definitivamente el historial de consultas es muy útil cuando realizas decenas -hasta cientos- de consultas por día. Sobre todo si alguna vez se han preguntado ¿por qué se ha estropeado esta tabla?
El historial recuerda casi todo lo que uno ejecuta, pero no recuerda la hora de ejecución, característica que espero que agreguen pronto.
Comandos SQL listos!
Todos sabemos que el lenguaje SQL es muy difícil de escribir, pero algunas veces se hace tedioso incluso para hacer un simple SELECT, en este caso Workbench tiene opciones muy útiles para estos casos. Al hacer click derecho en una tabla (en general cualquier objeto) aparecen opciones como «Copy to clipboard -> Update statement» y zaz.. en memoria tenemos ya el comando SQL para actualizar la tabla, y si esta en el Clipboard, mejor, por que podemos llevarlo a nuestro editor preferido para seguir programando. Siendo modesto esa opción puede ahorrar 5 valiosos minutos a cualquier programador.
Resaltado de errores y ocultado de código SQL
Cuando escribimos segmentos grandes de código SQL sobre todo en consultas anidadas, con llamadas a funciones, etc., suele ser difícil encontrar un error de anidamiento o bueno.. un error en resumidas cuentas, MySQL Workbench tiene la característica de mostrar los «horrores» de nuestro código, pero no siempre acierta pero sirve de mucho.
Al ocultar un segmento de código fastidioso, para entender mejor una consulta, en MySQL Workbench no es tan cómodo por el simple hecho de que no tienes mayores indicadores del código ocultado mas que un símbolo [+] y la secuencia numérica de lineas, a esta característica deberían agregarle algo al final para saber que algo continua y no eliminarlo por accidente.
Otras características que puedo comentar:
- Impresionante!, es la palabra que merece el gestor de base de datos MySQL 5.1 , escribí numerosos procedimientos/funciones y consultas muy complejas, que antes eran imposibles, pero ahora las escribo con toda confianza y lo mejor de todo es que es super veloz!
- SQL safe mode: es un modo de conexión que evita hacer modificaciones a toda la tabla con una consulta, por a si a alguien no le ha pasado alguna vez: eliminar toda una tabla/base de datos por accidente, el comando muy sencillo pero peligroso.
- Todo esta a corta distancia: Todos los elementos de nuestra base de datos estan disponibles en el panel lateral y los tabs de la parte inferior, aun que quita espacio no deja de ser util, deberían optimizar esas vistas para tener mas espacio.
- Los tabs siempre son utiles, donde quiera que estén.
Lo que mo ne gusta:
- Con los procedimientos almacenados y funciones Workbench abre en un editor undividual por cada procedimiento/funcion para ser modificado/creado y para guardarlo hay que gastar mas de dos clicks innecesariamente, los clicks no cuestan nada pero fastidian. En este caso prefiero abrirlos directamente desde el editor (como lo hago en SQL Server).
- Termina el programa cuando uno utiliza algun plugin de texto como los que cambian a mayusculas las palabras reservadaas. Tambien suele terminar el programa abruptamente en condiciones que aun desconozco, en cuanto tenga esa información voy a enviar el reporte de bug.
- No hay mas plugins, hubiera esperado al menos uno pero lamentablemente no hay mas plugings (la pagina esta en mantenimiento).
- Tabs: Workbench devuelve automaticamente un tab por resultado, es incomodo revisar cada tab si esque estamos haciendo un seguimiento.
- No hay una funcion para imprimir un mensaje directamente (como el comando print en SQL Server), para simular algo asi se puede utilizar una consulta de seleccion que incluya la variable para mostrarla.
- Algunas veces en el panel de resultados uno ve el simbolo de [blob] cuando espera un resultado de menos de 100 caracteres, esto si que molesta por que sucede cuando utilizas la funcion CONCAT(…), la cadena de resultado no es muy grande para que Workbench lo considere como BLOB.
Algunos lectores seguramente me van a increpar la comparacion con SQL Server, pero debo decirles que Workbench me parece mucho mas util (en este caso) que el editor de consultas del Enterprise Manager, pero aun hay cosas que deben madurar.
Pueden descargar Workbench directamente desde:
http://dev.mysql.com/downloads/workbench/
Update 5-mar: Acaban de lanzar MySQL Workbech 5.2.32 hace unas horas, lo he descargado e instalado pero persiste un error que he reportado como bug: http://bugs.mysql.com/bug.php?id=60354