[firebase-br] Firebird X Insert com loop
Paulo Portella
pportellaa.firebase em gmail.com
Seg Fev 21 14:27:00 -03 2011
Em 21/02/2011 13:54, Magno System escreveu:
> Então Paulo, como ele vai dar ROLLBACK em 15000 linhas se elas foram
> comitadas a cada 250 linhas. Se ele estiver com a transação entre a
> linha 14001 e 14250, o rollback vai cancelar somente este intervalo.
> De 1 a 14000 já teriam sido comitadas.
>
>
> ----- Original Message ----- From: "Paulo Portella"
> <pportellaa.firebase em gmail.com>
> To: "FireBase" <lista em firebase.com.br>
> Sent: Monday, February 21, 2011 12:57 PM
> Subject: Re: [firebase-br] Firebird X Insert com loop
>
>
> Em 21/02/2011 12:55, Marcelo Moreira escreveu:
>> Paulo,
>>
>> O problema de fazer isso é que se ocorrer algum problema ate que
>> todas as
>> linhas tenham sido inseridas no banco eu tenho de executar um rollback
>> ______________________________________________
>> 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
>
> E qual o problema nisso/disso?
> Rollback ele existe pra isso mesmo, dar segurança nas transações.
>
>
Desculpe a curiosidade então o que são essas 15.000 linhas para que
TODAS devam ser commitadas?
NFe de importação?
Re-li o texto original e vendo que ele disse que "alguma transação
trava", por isso entendi que cada uma é independente... blz.?
Mas pensei novamente noutra coisa aqui, seu lance é saber SE o sistema
travou não é? pra cada loop tambem experimente executar:
Application.ProcessMessages;
Quanto ao uso de StoredProcedure, não vejo o porque, pois para cada
linha será uma "chamada independente" então volta ao X inicial que
levantei e que não poderia -> Commitar TUDO ou nada.
Quanto aos campos serem Integer/Smallinteger eu aconselharia Char(1),
caso você não tenha que fazer cálculos, se tiver que fazer calculo,
então não mude.
Volto a perguntar -> qual é o conteúdo dessas 15mil linhas que devam
todas serem inseridas?
tu não pode tratá-las?
Faço isso em um cliente que possui 40 lojas, imagine importar todo o
movimento diário/semanal/quinzenal/mensal de Cartão de Crédito/Débito
(várias bandeiras) e cada arquivo que meu sistema
lê/importa/trata/relaciona não dura mais que 5 minutos (+/- 5mil linhas
em dias fracos)
--
Vida de americano é assim: iPhone, iPod, iPad, iMac….
Já a de brasileiro é assim:IPTU, IPVA, ICMS, IPI etc
Mais detalhes sobre a lista de discussão lista