Приложение. Форматы загрузочных файлов

Данные для загрузки в таблицы программа ldba берет из загрузочного файла. Загрузочный файл должен быть представлен в одном из форматов, описанных ниже. Смешение в одном файле двух форматов недопустимо.

Символьные данные загружаются в том виде, в каком они представлены в загрузочном файле (включая пробелы слева).

Байтовые строки задаются в виде символьной строки, содержащей шестнадцатеричные цифры.

Формат представления BLOB-данных следующий:

< тип BLOB-данных > < спецификация файла > [< смещение > [< длина >]]

< тип BLOB-данных >

Алфавитно-цифровое значение длиной 1 байт, идентифицирующее тип BLOB-данных (например, Т – текстовые данные, Г – графические, М – музыкальные записи и т.п.). Это значение СУБД ЛИНТЕР не контролируется.

< спецификация файла >

Полная или частичная спецификация (путь и имя) файла, содержащего загружаемые BLOB-данные. Если тип файла не задан, по умолчанию используется .blb. BLOB-файлы должны размещаться в том же каталоге, что и загрузочный файл.

< смещение >

Целое положительное значение, задающее номер байта в файле, с которого начинается порция BLOB-данных. Если параметр не задан, по умолчанию принимается 0 (с начала BLOB-файла).

< длина >

Целое положительное значение, задающее размер порции BLOB-данных в байтах. Если параметр не задан, по умолчанию размер порции берется от < смещения > до конца BLOB-файла.

Примечание

Параметры < смещение > и < длина > задаются в том случае, когда загрузка BLOB-столбцов выполняется порциями из одного BLOB-файла.

Правила формата 1

В файлах формата 1 используются следующие соглашения:

  1. первый символ в каждой строке загрузочного файла является символом-разделителем;

  2. разные строки загрузочного файла могут иметь различные символы-разделители;

  3. каждая строка загрузочного файла начинается с символа-разделителя, который является разделителем значений этой строки;

  4. если информация, помещаемая в одну запись таблицы, занимает одну строку загрузочного файла, такая строка должна обязательно заканчиваться символом-разделителем;

  5. коды «Перевод строки» и «Возврат каретки», заданные в символьных и байтовых полях, воспринимаются как данные;

  6. коды «Перевод строки» и «Возврат каретки», заданные перед и/или после числовых данных, данных типа DATE, BLOB игнорируются;

  7. если информация, помещаемая в одну запись таблицы, занимает более одной строки загрузочного файла, то разбивка этой информации на отдельные строки должна производиться только перед или после числовых данных типа DATE, BLOB. В таком случае продолжение записи на следующей строке не должно начинаться с символа-разделителя.

Правила формата 2

В файлах формата 2 используются следующие соглашения:

  1. символ-разделитель определяется самой утилитой ldba;

  2. указанный в ldba символ-разделитель используется для всех строк загрузочного файла;

  3. одной записи таблицы должна соответствовать только одна строка в загрузочном файле, разбивка строки загрузочного файла на несколько строк не допускается;

  4. коды «Перевод строки» и «Возврат каретки» в данные входить не должны (так как в этом формате они задают конец строки загрузочного файла).