[firebase-br] Identificar Campo READ-ONLY
Marcos Weimer
marcosweimer em gmail.com
Sex Dez 30 09:57:31 -03 2011
Bom dia!
No "apagar" das luzes estou apanhando para uma rotina aqui que replica os
dados de um banco para outro.
Como é tudo dinamico, pego os dados dos campos das tabelas com o seguinte
select:
SELECT r.RDB$FIELD_NAME AS nome,
f.RDB$FIELD_LENGTH AS tamanho,
CASE f.RDB$FIELD_TYPE
WHEN 261 THEN 'BLOB'
WHEN 14 THEN 'CHAR'
WHEN 40 THEN 'CSTRING'
WHEN 11 THEN 'D_FLOAT'
WHEN 27 THEN 'DOUBLE'
WHEN 10 THEN 'FLOAT'
WHEN 16 THEN 'INT64'
WHEN 8 THEN 'INTEGER'
WHEN 9 THEN 'QUAD'
WHEN 7 THEN 'SMALLINT'
WHEN 12 THEN 'DATE'
WHEN 13 THEN 'TIME'
WHEN 35 THEN 'TIMESTAMP'
WHEN 37 THEN 'VARCHAR'
ELSE 'UNKNOWN'
END AS tipo,
r.rdb$field_position AS posicao,
CASE r.rdb$null_flag WHEN 1 THEN 'S' ELSE 'N' END AS NOT_NULL
FROM RDB$RELATION_FIELDS r
LEFT JOIN RDB$FIELDS f ON r.RDB$FIELD_SOURCE = f.RDB$FIELD_NAME
WHERE r.RDB$RELATION_NAME= :tabela
ORDER BY r.RDB$FIELD_POSITION
Só que em alguns casos beeem especificos tem colunas read-only ae na hora
de transferir os dados la se vão erros e erros... cannot update read-only
column...
alguem tem a informação de onde faço a leitura para identificar se o campo
é read-only ?
Estou no google a um bom tempo e até agora não achei nada.
vlw
-=Ma®©oS=-
Marcos R. Weimer
Puma GTE 1974 Tubarão
Mais detalhes sobre a lista de discussão lista