[firebase-br] Select em 2 bancos
DanielN
danieln.desenvol em supersoft.com.br
Qui Out 7 15:26:13 -03 2010
Hoje utilizamos log de alterações via sistema gravando o log em outro
banco de dados para não inchar desnecessáriamente o banco da aplicação,
mas com este recurso poderia passar a usar log de alterações via
trigger, melhorando a performace e a confiabilidade dos logs.
mas se eu não conseguir me conectar ao banco de log precisaria gravar em
uma tabela do banco da aplicação mesmo e depois migrar para o banco de logs.
Em 07/10/2010 13:45, Levy Moreira escreveu:
> É vei agora ferrou... diz ai o que vc queria fazer mais ou menos pra ver se
> num tem outro geito... esse cantu é curto e grosso com um link ele
> responde....
>
> 2010/10/7 DanielN<danieln.desenvol em supersoft.com.br>
>
>> Então é que no meu caso pensei em usar isso em uma trigger, então não teria
>> como tratar isso na aplicação
>>
>> Em 07/10/2010 11:26, Levy Moreira escreveu:
>>
>> Trate a exceção no aplicativo, disconheço uma forma de fazer o tratamento
>>> de exceções no sql...
>>>
>>> 2010/10/7 DanielN<danieln.desenvol em supersoft.com.br>
>>>
>>>
>>>
>>>> Levy vc saberia me dizer se existe alguma maneira de fazer um tratamento
>>>> caso o fdb não exista?
>>>>
>>>> Grato
>>>> Daniel Nicoletti
>>>>
>>>>
>>>> Em 07/10/2010 10:38, Levy Moreira escreveu:
>>>>
>>>> É sim senhor aki esta um exemplo meu:
>>>>
>>>>
>>>>> --SELECT * FROM FAT where CLIFAT = 1 and TIPFAT = 'VP'
>>>>>
>>>>> execute ibeblock
>>>>> returns( CLINEW integer, CODF integer,CLIF integer, TIPF varchar(5),
>>>>> CLIANT integer, NMCLI varchar(45))
>>>>> as
>>>>> begin
>>>>> --Cria as conexoes--
>>>>> create connection dbNew dbname 'c:\dados1.fdb' --Banco atual
>>>>> password 'masterkey' user 'SYSDBA'
>>>>> sql_dialect 3
>>>>> clientlib 'fbclient.dll';
>>>>>
>>>>> create connection dbAnt dbname 'c:\dados2.fdb' --Banco antigo
>>>>> password 'masterkey' user 'SYSDBA'
>>>>> sql_dialect 3
>>>>> clientlib 'fbclient.dll';
>>>>>
>>>>> use dbNew;
>>>>> for execute statement 'select CODFAT, CLIFAT, TIPFAT, CLIANT from
>>>>> "FAT"'
>>>>> --Loop ..
>>>>> into :CODF, :CLIF, :TIPF , :CLIANT
>>>>> do
>>>>> begin
>>>>> if (:CLIF = 1 and TIPF='VP') then --...verificando se a Fat perdeu o
>>>>> Cli
>>>>> begin
>>>>> use dbAnt;
>>>>> select CLIFAT from fat where CODFAT = :CODF --Verifica o codigo
>>>>> da
>>>>> Fat. no bd ant
>>>>> into :CLIANT;
>>>>>
>>>>> select NOME01 from cli where CODCLI = :CLIANT --Pega o nome do
>>>>> cli
>>>>> no
>>>>> bd ant
>>>>> into :NMCLI;
>>>>>
>>>>> use dbNew;
>>>>> select CODCLI from CLI where NOME01 = :NMCLI --Pega o codigo do
>>>>> cliente no banco atual
>>>>> INTO :CLINEW;
>>>>>
>>>>> update FAT set CLIFAT = :CLINEW where CODFAT = :CODF ; --Seta o
>>>>> cliente na Fat
>>>>> commit;
>>>>> end
>>>>>
>>>>> suspend;
>>>>> end
>>>>>
>>>>> close connection dbNew;
>>>>> close connection dbAnt;
>>>>> end
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>> ______________________________________________
>>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>>>> http://www.firebase.com.br/fb/artigo.php?id=1107
>>>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>>>
>>>>
>>>>
>>>
>>>
>>>
>>
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>> http://www.firebase.com.br/fb/artigo.php?id=1107
>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>
>
>
Mais detalhes sobre a lista de discussão lista