SQL * Loader

12/05/2010

0

Bom dia Estou usando o SQL *Loader para fazer a importação de um arquivo CSV para o banco de dados Oracle.
Tenho uma tabela:IDCEP NUMBERIDBAIRRO NUMBERSDCLOGRADOURO VARCHAR2(100)SCDCEP VARCHAR(8)IDMUNICIPIO
Estou usando o seguinte condigo no meu control:
load data infile 'cep.txt' APPEND  into table PARCEP fields terminated by ',' (IDCEP SEQUENCE(MAX,1),  IDBAIRRO "TO_NUMBER(IDBAIRRO,999)",   SDCLOGRADOURO,  SCDCEP,  IDMUNICIPIO "TO_NUMBER(IDMUNICIPIO,999)" )
meu arquivo cep.txt é esse:11897, 47, "João Silva", "66954856", " ", 1611898, 39, "Carlos Carvalho", "67908825", " ", 1611899, 36, "Guimarães Cunha", "68930965", " ", 16

Após executar a linha de comando: sqlldr server/senha control=control.ctdAparece a mensagem:
Registro 1: Rejeitado - Erro na tabela CEP, coluna IDBAIRRO.ORA-00984: coluna não permitida aqui
Registro 2: Rejeitado - Erro na tabela CEP, coluna IDBAIRRO.ORA-00984: coluna não permitida aqui
Registro 3: Rejeitado - Erro na tabela CEP, coluna IDBAIRRO.ORA-00984: coluna não permitida aqui 




Alguém tem alguma idéia do que pode estar ocorrendo e me ajudar?
Obrigado!!

Silvio Borges

Silvio Borges

Responder

Posts

16/05/2010

Danielle Lemos

Silvio,

É preciso colocar ':' antes dos campos idbairro e idmunicipio.
Ex:
  IDBAIRRO "TO_NUMBER(:IDBAIRRO,999)",   IDMUNICIPIO "TO_NUMBER(:IDMUNICIPIO,999)"

[]´s

Dani
Responder

18/05/2010

Silvio Borges

O que funcionou para mim:

-- Controle (arquivo controle.ctd)
load data
infile 'cep.txt'
APPEND 
into table PARCEP
fields terminated by ','
(
IDCEP,
IDBAIRRO, 
SDCLOGRADOURO,
SCDCEP,
IDMUNICIPIO
)


-- dados (cep.txt)
999996,47,João Silva,69914356,16
999997,39,Carlos Carvalho,69903815,16
999998,36,Guimarães Rocha,69910365,16


-- linha de comando no cmd
sqlldr nomedabase/senhadabase control=controle.ctd parallel=true



Obrigado pela ajuda! 
 
Responder

APRENDA A PROGRAMAR DO ZERO AO PROFISSIONAL

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar