[firebase-br] Importação de dados de arquivo txt

Silfar Goulart de Castro silfar em gmail.com
Qui Jan 10 11:09:44 -03 2008


é isso mesmo, eu posso jogar o txt dentro de uma tabela, a minha dúvida 
é como proceder depois, por exemplo como eu posso controlçar uma 
transação. E como seriam estas procedures.

Desde já agradeço pela ajuda.

Sicnemelpor escreveu:
> Eu não vejo forma fácil de se fazer isso dentro do banco, realmente.  
> Talvez com alguma UDF. Você teria que ter acesso direto aos arquivos texto  
> sem serem formatados como tabela, e processar linha a linha. Baseado no  
> tipo do registro (que é informado no começo dele) você decidiria em qual  
> tabela armazenar a informação.
>
> Se, e somente SE todos os registros forem exatamente do mesmo comprimento,  
> você até poderia criar uma tabela externa de um só campo do tamanho do  
> registro (não esqueça do CR+LF do fim, se houver) e tratar tudo com  
> substrings. Desta forma é possível fazer por procedure dentro do banco.
>
> Atualmente aqui na UFPR estou fazendo exatamente o inverso, pegando dados  
> de tabelas e gerando um arquivo texto de múltiplos registros heterogêneos  
> (coisas do MEC). (Programo em FreePascal no Linux).
>
> []s
> Nelson Sicuro
>
>   
>> Nelson, concordo com vc, mas eu queria fazer esta programação dentro do
>> banco, tipo com procedures.
>>
>> Pode me ajudar nessa ?
>>
>> Sicnemelpor escreveu:
>>     
>>> A melhor forma de se fazer isso é por programação, pois esse TXT tem
>>> registros de vários formatos diferentes. Não vejo forma direta para
>>> importar isso para dentro do banco de dados.
>>>
>>> Lembra um pouco coisa de COBOL...
>>>
>>> []s
>>> Nelson Sicuro
>>>
>>>
>>>       
>>>> Ola ...
>>>>
>>>> tenta formatar pelo excel depois salva ele em dbf ....
>>>>
>>>>
>>>> Em 09/01/08, Silfar Goulart de Castro <silfar em gmail.com> escreveu:
>>>>
>>>>         
>>>>> Pessoal, tô escrevendo pra pedir uma ajuda.
>>>>>
>>>>> Tenho que fazer a importação de dados de um arquivo txt, porem este
>>>>> arquivo não possui layout único. Cada  linha do arquivo  é um registro
>>>>> de  uma determinada tabela. Deixa eu mostrar:
>>>>>
>>>>> linha 1 - 0300TIT000000
>>>>> linha 2 - 0301TIT10000000000017               JCIRCO EDICOES
>>>>> MUSICAIS                       S               aaaa
>>>>> linha 3 - 0301TIT20000000000017
>>>>> 0000000000027278027000105               000000000000  COM081R. PEDROSO
>>>>> ALVARENGA, 543/168
>>>>> linha 4 - 0301TIT30000000000017               E 06101992         
>>>>> 030AMAR
>>>>> linha 5 - 0309TIT0
>>>>>
>>>>>
>>>>> linha 1 - Essa linha indica o inicio de uma transação.
>>>>> linha 2 - Indica uma inclusão na tabela de titular.
>>>>> linha 3 - inclusao na tabela de documentação de titular.
>>>>> linha 4 - inclusao na tabela de afiliação.
>>>>> linha 5 - Fim da transação.
>>>>>
>>>>> Bem é mai ou menos isso. eu pensei em fazer com procedures, mas não  
>>>>> sei
>>>>> por onde começar .
>>>>>
>>>>> Alguem pode me dar uma ajuda sobre isso.
>>>>>
>>>>> ______________________________________________
>>>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>>>> Para editar sua configuração na lista, use o endereço
>>>>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>>>>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>>>>
>>>>>
>>>>>           
>>>> ______________________________________________
>>>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>>>> Para editar sua configuração na lista, use o endereço
>>>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>>>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>>>
>>>>         
>>>
>>>
>>>       
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> Para editar sua configuração na lista, use o endereço  
>> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>     
>
>
>
>   





Mais detalhes sobre a lista de discussão lista