Синтаксический анализ поля Oracle External Tables в среде Linux

Stackruers!

У меня проблема с экземпляром Oracle Database 11g, где у меня есть данные сопоставления внешней таблицы из внешнего файла.

Вот мой код, который работает на виртуальной машине под управлением Windows Server 2008 R2 x64:

CREATE TABLE ABC (
    NAMECREDORPART1 CHAR(50 CHAR), 
    NAMECREDORPART2 CHAR(50 CHAR), 
    NAMECREDORPART3 CHAR(50 CHAR), 
    ADDRESSCREDORPART1 CHAR(50 CHAR),
    (...)
   ) 
   ORGANIZATION EXTERNAL (
        TYPE ORACLE_LOADER
        DEFAULT DIRECTORY FILES
        ACCESS PARAMETERS (
            records delimited by '\n' CHARACTERSET 'WE8ISO8859P15'
            LOAD WHEN (documento != blanks)
            FIELDS
            MISSING FIELD VALUES ARE NULL
            REJECT ROWS WITH ALL NULL FIELDS (
               NAMECREDORPART1 position(1:49) char(50),
               NAMECREDORPART2 position(50:99) char(50),       
               NAMECREDORPART3 position(100:149) char(50),
               ADDRESSCREDORPART1 position(150:199) char(50),
               (...)
            )
        )
        LOCATION ('abc.mtf')
    )
PARALLEL
NOMONITORING
REJECT LIMIT UNLIMITED;

Этот код приводит к загрузке / сопоставлению следующих данных в этой таблице ABC:Это именно то, как я хочу, чтобы мои данные были загружены!:D

К сожалению, моя производственная среда - Oracle Database 11g (той же версии), работающая на платформе Linux. Это приводит к странному поведению, когда я использую этот же код для загрузки того же файла (abc.mtf): поля заполняются пробелами. Я не знаю, почему это происходит, поскольку это не происходит на моей виртуальной машине Windows Server 2008.

Вот скриншот этих же данных в среде Linux:

http://img211.imageshack.us/img211/7535/error01i.png

Может ли кто-нибудь помочь мне получить тот же вывод в среде Linux, что и в Windows? Заранее спасибо за помощь!

1 ответ

Может ли проблема заключаться в том, что раздел "записи, разделенные" не учитывает различные комбинации символов в конце строки? NEWLINE по умолчанию должен позаботиться об этом.

Другие вопросы по тегам