[firebase-br] IbExpert Maluco com CASE
Dodo_Terra
dodomr em terra.com.br
Ter Nov 28 13:55:37 -03 2006
Tenho uma Select que retorna o nome do campo, tamanho, se pode nulo, etc...
quando edito esse select no IB, com o QueryBuilder, ao retornar para o Edit o select vem deformado, vou mostrar o select.Quem puder testar agradeço
SELECT DISTINCT CAMPOS.RDB$FIELD_NAME AS COLUMN_NAME,
CAMPOS.RDB$DESCRIPTION AS DESCRICAO,
DADOSCAMPO.RDB$FIELD_LENGTH AS TAMANHO,
CASE
WHEN DADOSCAMPO.RDB$FIELD_PRECISION > 0 THEN 'NUMERIC'
WHEN TIPOS.RDB$TYPE_NAME = 'LONG' THEN 'INTEGER'
WHEN TIPOS.RDB$TYPE_NAME = 'SHORT' THEN 'SMALLINT'
WHEN TIPOS.RDB$TYPE_NAME = 'INT64' THEN 'NUMERIC'
WHEN TIPOS.RDB$TYPE_NAME = 'VARYING' THEN 'VARCHAR'
WHEN TIPOS.RDB$TYPE_NAME = 'TEXT' THEN 'CHAR'
WHEN TIPOS.RDB$TYPE_NAME = 'BLOB' THEN 'BLOB SUB_TYPE'
Else TIPOS.RDB$TYPE_NAME
END AS FIELD_TYPE,
CASE
WHEN DADOSCAMPO.RDB$FIELD_TYPE IN(16,8) THEN DADOSCAMPO.RDB$FIELD_PRECISION
Else DADOSCAMPO.RDB$FIELD_LENGTH
END AS DATA_LENGTH,
CASE CAMPOS.RDB$NULL_FLAG
WHEN 1 THEN 'N'
ELSE 'Y'
END AS NULLABLE
From RDB$RELATIONS TABELAS,
RDB$RELATION_FIELDS CAMPOS,
RDB$FIELDS DADOSCAMPO,
RDB$TYPES TIPOS
Where TABELAS.RDB$RELATION_NAME = 'TABELA'
AND TIPOS.RDB$FIELD_NAME = 'RDB$FIELD_TYPE'
AND TABELAS.RDB$RELATION_NAME = CAMPOS.RDB$RELATION_NAME
AND CAMPOS.RDB$FIELD_SOURCE = DADOSCAMPO.RDB$FIELD_NAME
AND DADOSCAMPO.RDB$FIELD_TYPE = TIPOS.RDB$TYPE
Order By CAMPOS.RDB$FIELD_POSITION
Mais detalhes sobre a lista de discussão lista