[firebase-br] (sem assunto)

Carlos H. Cantu listas em warmboot.com.br
Qua Set 11 10:04:48 -03 2013


Pode ser um bug do IBO, e sugiro que vc reporte o caso ao Jason.

De qq forma, se quiser um workaround, tente desativar o
KeyLinksAutoDefine e coloque manualmente A.MOTIVO (chave primaria) na
propriedade KeyLinks.

[]s
Carlos H. Cantu
www.FireBase.com.br - www.firebirdnews.org
www.warmboot.com.br - blog.firebase.com.br

GS> Estou escrevendo um aplicativo que transfere os dados de um database para
GS> outro database (ambos Firebird), exatamente igual, e transfere dados tabela
GS> a tabela, campo a campo.

GS> Tenho dentro desse database, uma simples tabela que só tem 2 campos:
GS> CREATE TABLE PC_FORN_MINIMO (
GS>     MOTIVO   VARCHAR(255) DEFAULT NULL ,  <--- PK
GS>     MINIMO  SMALLINT DEFAULT 0 NOT NULL CHECK (VALUE >=0 AND VALUE <= 255)
GS> );

GS> Não sei o motivo, mas usando o IB_Query, quando dou um :
GS> SELECT a.* FROM PC_FORN_MINIMO a
GS> Ocorre a seguinte mensagem de erro :
GS> Invalid KeyLinks entry: A.ID_PC

GS> Já tentei de tudo como voces podem ver nas linhas que comentei:
GS>   ISQL_TO:=TIB_Query.Create(Self);
GS>   ISQL_TO.IB_Connection:=FB_TO;
GS>   ISQL_TO.IB_Transaction:=FB_TRANS_TO;
GS>   ISQL_TO.SQL.Clear;
GS>   ISQL_TO.SQL.Add('SELECT a.* FROM '+sTabelaTo+' a ');
GS> {
GS>   ISQL_TO.KeySeeking:=false;
GS>   ISQL_TO.KeyLinks.Clear;
GS>   ISQL_TO.MasterLinks.Clear;
GS>   ISQL_TO.JoinLinks.Clear;
GS>   ISQL_TO.KeyRelation:='';
GS>   ISQL_TO.MasterSearchFlags:=[];
GS>   ISQL_TO.KeyLinksAutoDefine:=false;
GS>   ISQL_TO.FetchWholeRows:=false;
GS> }
GS>   try
GS>     // PAU BEM AQUI
GS>     ISQL_TO.Open;
GS>   except
GS>   on e:exception do
GS>      begin
GS>        if not AddtoLog(e.message,'Erro ao transferir tabela de
GS> ['+sTabelaFrom+'] para ['+sTabelaTo+'] :',ISQL_TO.SQL.Text) then
GS>        begin
GS>          LimparMemoria;
GS>          Exit;
GS>        end;
GS>      end;
GS>   end;

GS> Todas as demais tabelas a transferência ocorre numa boa, inclusive bem mais
GS> complexas do que esta, parece que essa tabela paga o preço por ser simples
GS> demais.

GS> Alguem aí já passou por isso e soube como resolver?
GS> ______________________________________________
GS> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
GS> Para saber como gerenciar/excluir seu cadastro na lista, use:
GS> http://www.firebase.com.br/fb/artigo.php?id=1107
GS> Para consultar mensagens antigas: http://firebase.com.br/pesquisa





Mais detalhes sobre a lista de discussão lista