[firebase-br] Erro com comando AlterTable
Felipe Caputo
felipe.caputo em gmail.com
Seg Ago 23 18:18:27 -03 2010
Boa noite amigos,
o codigo era esse:
procedure CriarCampo(tabela, campo, tipo : String);
begin
tmp.Close;
tmp.CommandText := 'Select ' + campo + ' from ' + tabela + ' where 1 =
2';
try
tmp.Open;
tmp.Close;
except on e : Exception do
begin
tmp.CommandText := 'Alter Table ' + tabela + ' add '+ campo + ' ' +
tipo;
tmp.ExecSQL();
end;
end;
end;
eu tinha passado por ele e deixado pq é um comando que o pessoal aqui da
empresa ja usava. O que eu não tinha percebido é que a exception que ele
estava gerando não era a do field e sim uma outra que é um problema do dbx
com o firebird na propriedade GetMetaData (SQL mapping failed) e como ele
estava tentando criar novamente e tudo ele sempre dava a exception. Já
substitui o codigo acima por
'Select RDB$FIELD_NAME FROM RDB$RELATION_FIELDS WHERE RDB$FIELD_NAME = ' +
CAMPO + ' AND RDB$RELATION_NAME = ' + TABELA;
Muito obrigado a todos pela ajuda!
Mais detalhes sobre a lista de discussão lista