top from all sql jdbc firebird squirrel-sql jaybird

from - top firebird sql



El alias de columnas en las instrucciones SELECT no funciona con SQuirrel SQL+Firebird (2)

El problema se debe a la confusión en las especificaciones de JDBC (al menos históricamente) y a un cambio en Jaybird con respecto a lo que informa como columnNames y columnLabels en los metadatos del conjunto de resultados. Por lo que sé, en JDBC 2.0 y anteriores, la distinción entre columnName y columnLabel no estaba bien definida, por lo que en casi todos los casos, getColumnName() devolvió el mismo valor que getColumnLabel() (es decir, el alias AS si se especifica).

Con JDBC 3.0, se hizo una distinción más columnName : el nombre de columna debía ser el nombre de la columna subyacente en una tabla (si existe), el columnLabel es el alias AS si se especifica y, de lo contrario, el nombre de columnName . Jaybird 2.1.6 y anteriores solían devolver el mismo valor para getColumnLabel() y getColumnName() (es decir, columnLabel ), esto se cambió en Jaybird 2.2.

Al parecer, Squirrel columnName de forma columnName opción no compatible con JDBC de columnName , en lugar de columnLabel . Como ya descubrió: hay una opción para que use la columnLabel en columnLabel lugar. La otra opción que tiene es usar Jaybird 2.2.1 o superior y agregar la propiedad de conexión columnLabelForName=true .

Intenté agregar un alias de columna en la instrucción SELECT utilizando SQuirrel SQL 3.4 + Firebird 1.5 + Driver JDBC Jaybird 2.2. [0 | 1] (JVM 1.7.0_03), pero no funciona. La columna con alias aparece con el nombre original de la columna. En otra herramienta (DBExpert) la misma declaración funciona bien.

Declaración : SELECT column1 AS alias1, column2 FROM table;
Nombre de las columnas resultantes en SquirrelSQL : column1 - column2
Nombre de las columnas resultantes en DBExpert : alias1 - column2

Intentado agregar ''y "alrededor del nombre de alias, pero también no funciona.

Alguien tiene una idea?

Edición: Actualicé el controlador JDBC Jaybird a la versión 2.2.1 (publicado el 30 de septiembre) y el problema continúa.

Edición 2: ¡Problema solucionado!

El problema es causado por las preferencias predeterminadas de Squirrel SQL.

Para solucionarlo, vaya a "Archivo" -> "Preferencias globales", en la pestaña "Controles de tipo de datos", busque "General (se aplica a todos los tipos)" y marque el cuadro combinado "Usar etiquetas de columna en lugar de nombres de columna en los encabezados de resultados ".

Vea la captura de pantalla: http://i1-win.softpedia-static.com/screenshots/SQuirrel-SQL-Client_4.png?1345342622

Disfrutar.


En Squirrel esto necesita ser configurado en:

Archivo> Preferencias globales> Controles de tipo de datos> Comprobar: utilice etiquetas de columna en lugar de nombres de columna en los encabezados de resultados