Pular para o conteúdo
Visualizando 3 posts - 1 até 3 (de 3 do total)
  • Autor
    Posts
  • #93467
    LucianoRM
    Participante

      Olá pessoal,

      Não estou achando um meio de fazer campos tipo Date funcionar em uma external table.
      O resto está funcionando, se tiro os valores dos campos data o “select” roda sem problemas.
      A data está no arquivo no formato “dd/mm/yyyy”, o log de erros retorna ORA-01843: não é um mês válido.
      O arquivo de teste tem dois registros e as datas desses registros são: ;02/02/2005; e ;03/06/2005;, o que achei estranho, pois no formato americano essas datas seriam válidas, mesmo que invertidos dia e mês.

      Segue abaixo parte do script de criação da tabela (sem todos os campos pra diminuir o tamanho do post):

      create table TAB_EXTERNA
      (
      CD_CONHE NUMBER(6),
      DTEMIS DATE,
      VEICULO VARCHAR2(1),
      PLACA VARCHAR2(10),
      FREEMP NUMBER(9,2),
      DTRECE DATE,
      DTRECI DATE
      )
      ORGANIZATION EXTERNAL
      (
      type oracle_loader
      default directory ext_tab
      access parameters
      ( records delimited by newline
      fields terminated by ‘;’)
      location(‘tabela.csv’)
      )

      Por favor, desconsiderem qualquer erro de digitação.

      Já tentei soluções dos seguintes links:
      http://asktom.oracle.com/pls/asktom/f?p … 1962171229
      http://download.oracle.com/docs/cd/B193 … ncepts.htm
      http://www.adp-gmbh.ch/ora/misc/ext_table_2.html
      http://blog.lishman.com/2008/03/oracle- … ables.html

      Obrigado,


      Luciano Rodrigues

      #93475
      diegolenhardt
      Participante

        CREATE TABLE bank_hol_ext(
        hol_desc VARCHAR2(50),
        hol_2007 DATE,
        hol_2008 DATE,
        hol_2009 DATE
        )
        ORGANIZATION EXTERNAL
        (TYPE oracle_loader
        DEFAULT DIRECTORY tmp_dir
        ACCESS PARAMETERS(
        records delimited BY newline
        load when (hol_2007 != BLANKS)
        badfile log_dir:’bank_holidays.bad’
        logfile log_dir:’bank_holidays.log’
        discardfile log_dir:’bank_holidays.dsc’
        skip 1
        fields terminated by ‘t’
        optionally enclosed by ‘”‘
        missing field values are null
        [b](
        hol_desc,
        hol_2007 DATE “dd/mm/yy”,
        hol_2008 DATE “dd/mm/yy”,
        hol_2009 DATE “dd/mm/yy”
        )[/b]
        )
        LOCATION(‘hols.txt’))
        REJECT LIMIT UNLIMITED;

        #93483
        LucianoRM
        Participante

          Muito obrigado Diego, agora funcionou, eu até tinha feito assim mas estava colocando os outros campos com seus respectivos tipos, retirei esses tipos e fiz como no seu exemplo para os campos data.

          []’s
          Luciano Rodrigues

        Visualizando 3 posts - 1 até 3 (de 3 do total)
        • Você deve fazer login para responder a este tópico.