Формат экспортированного файла данных

Файл данных, генерируемый в процессе экспорта данных базовой таблицы, имеет следующий формат:

< строка таблицы >::=
< поле данных >::=
< LF >::=
переход на следующую строку
< р >::=
символ разделителя (по умолчанию запятая)
< значение столбца >::=
символьное представление значения столбца таблицы

Общие правила

  1. Разделители устанавливаются в начале и в конце < строки таблицы >, а также между данными столбцов.

  2. Под < строкой таблицы > подразумевается строка базовой таблицы. В файле экспорта < строка таблицы > физически может быть представлена в виде нескольких строк, если данные текстовых столбцов содержат код перевода строки.

  3. Утилита перед экспортом каждой строки таблицы проверяет, не содержатся ли среди экспортируемого текста символы разделителя по умолчанию (т.е. запятая). Если да, то подбирается другой символ разделителя, который не содержится в экспортируемом тексте данной строки. Таким образом, в сгенерированном файле могут оказаться строки с разными символами разделителей. По этой причине настоятельно не рекомендуется производить выгрузку из столбцов с типом данных BYTE и VARBYTE в виде символов, а не шестнадцатеричных значений.

В таблице 3 представлены форматы выгрузки всех типов данных СУБД ЛИНТЕР.

Таблица 3. Форматы выгрузки данных
Тип столбцаВозможные ключиПримерКомментарий

CHAR, VARCHAR

Hello

Представление в виде символов

INTEGER, SMALLINT, BIGINT

123456

Символьное представление числового значения

BOOLEAN

true, false

Фраза true или false

BYTE, VARBYTE

48656C6C6F

Символьное представление шестнадцатеричных цифр

BYTE, VARBYTE

-g

Hello

Символьное представление байтов

NUMERIC

123456789012345678

90.1234

Символьное представление числового значения

DATE

-dus

06.03.2003

Символьное представление даты в формате дд.мм. гггг.[чч :[ми: [сс: [тт]]]]

Default-значение даты выгружается в формате дд.мм.гггг

DOUBLE

+1.23456789012345e+009

Символьное представление числового значения

NCHAR, NCHAR VARYING

320438043A0442043

E04400438044F04

Шестнадцатеричное представление Unicode-символов. Одному Unicode-символу соответствует 4 цифры (два байта)

NCHAR, NCHAR VARYING

-g

Виктория

Данные выгружаются в виде символов в 866-кодировке

REAL

123.456

Символьное представление числового значения

BLOB

1 ALLTYPE.blb

\00000001.002

Тип BLOB-данных и спецификация файла, содержащего экспортированные BLOB-данные

EXTFILE

/usr/linter/PDF/DocFiles

\LINTER.DOC?DOCRTF2TEXT

Спецификация экспортированного внешнего файла. До знака «?» указан путь к файлу на диске. После знака «?» – имя фильтра, который должен использоваться при загрузке данного внешнего файла


Во всех типах данных для представления NULL-значений по умолчанию применяется строка < NULL > (данное представление можно изменить с помощью ключа -p).

При указании ключа -sf схемы и данные экспортируются в виде SQL-запросов в единый текстовый файл. Перед запросами на создание объектов БД записываются комментарии с указанием типа объекта, владельца объекта и имени объекта, например:

-- Type: Table; Owner: "SYSTEM"; Name: "AUTO"

После SQL-запроса на создание таблицы следует комментарий на загрузку данных, например:

-- Data for table: "AUTO"