Hace 2 años necesitaba un cliente gráfico para BD que soportara Informix y que no fuera costoso, o preferentemente, gratuito.
Ya conocía SQuirreL pero no es de mi agrado; siempre ha tenido algo que no me gusta. Así que antes de tener que tragar mis palabras e instalarlo, busqué una alternativa, y la encontré: SQL Workbench.
No lo confundamos con MySQL Workbench, su nombre es muy similar, sí, pero hasta ahí llegan las coincidencias. Seguramente la confusión es constante, ya que la página web del producto menciona constantemente que son soluciones diferentes:

SQL Workbench es un cliente gráfico para BD (como SQuirreL) basado en Java. Esto tiene dos implicaciones: la primera, es que necesita dicha tecnología para poder ejecutar, y en segundo lugar, que por tener detrás esta plataforma, virtualmente se puede conectar a cualquier motor de base de datos para el que exista un driver JDBC.

Al iniciar el programa, se muestra la ventana de conexión en primera instancia. Es importante saber que el programa NO mostrará un editor de SQL hasta que tengas una conexion activa.
Habiendo elegido la instancia a la cual conectarse, la interfaz gráfica se ajusta y nos presenta la siguiente vista:

La sección 1 listará todas las bases de datos con las que la configuración utilizada para conectar permite interactuar, es decir, al proporcionar un usuario y contraseña para una base de datos en particular, es posible que con esas mismas credenciales se pueda acceder a otros esquemas en el mismo servidor. Si es el caso, las bases de datos se mostrarán ahí, así como los elementos que las componen en una estructura de árbol.
La sección 2 es una de mis funcionalidades favoritas; se trata de una lista de pestañas, donde cada pestaña corresponde a un archivo de texto en el cual se teclean enunciados SQL. -Lo sé, lo sé- esto existe en praticamente todos los clientes, ¿qué tiene de especial entonces? La magia está en que Workbench guarda tu trabajo aunque no lo hayas guardado tú, es decir, si estás editando comandos en una pestaña o más, y accidentalmente (o a propósito) cierras Workbench, al ejecutarlo nuevamente, tanto las pestañas como los comandos que tecleaste estarán ahí.
La sección 3 es simplemente el área de trabajo donde se puede capturar los enunciados SQL.
La sección 4 es utilizada por el programa para mostrar los resultados de la ejecución de los comandos y los recordsets cuando se ejecutan instrucciones de consulta.
Funcionalidades interesantes
Tener un cliente de base de datos, con la posibilidad de mantener una serie de instrucciones SQL puede ser una bendición y el origen de la peor de las desgracias. Sin lugar a dudas, una persona con algunos años de experiencia ya hizo un DROP TABLE, UPDATE o DELETE sin condiciones, causando una pérdida importante de información. Yo he tenido varios episodios de esos. Si tienes a la mano un respaldo o una forma de recuperar la información el asunto no es tan grave, pero si careces de ellos, estarás en graves aprietos.
SQL Workbench nos ayuda a no caer en la tentación de decir «yo siempre tengo cuidado con esas instrucciones». Existen opciones de configuración que causarán que Workbench evalúe las instrucciones antes de ejecutarlas y en caso de detectar algunas de estas de alto riesgo, te pedirá una confirmación para iniciarlas.
En la ventana de configuración de la conexión a la instancia de base de datos se encuentran estas opciones:

Esto permite tener las validaciones por cada conexión, es decir, no es una configuración general.
Adicionalmente, si la base de datos en turno es transaccional, y no deseamos hacer commit explícitamente en cada cambio, podemos indicar al cliente que lo haga automáticamente:

El trabajo con los datos es sencillo también. Habiendo ejecutado una instrucción select, podemos recuperar los datos en 3 formas:
Como texto separado por tabulador

Como una instrucción insert

Como datos tabulados para una hoja de MS Excel

Comentarios finales
SQL Workbench es un cliente muy ligero, sencillo de utilizar, con muchas de las funcionalidades que encontrarás en otras ofertas. Reitero en una de las ventajas que veo en él: por utilizar la tecnología Java, virtualmente lo puedes usar con cualquier motor para el que exista un driver JDBC.

Deja un comentario