Russian Belarusian English German Japanese Ukrainian

Таблицы форматов dBase и Paradox

CuBook55

С++ Builder не имеет своего формата таблиц, но поддерживает, как собственные, два типа локальных таблиц dBase и Paradox. Каждая из этих таблиц имеет свои особенности. Таблицы dBase являются одним из первых появившихся форматов таблиц для персональных компьютеров и поддерживаются многими системами, которые связаны с разработкой и обслуживанием приложений, работающих с БД.
 
Основные достоинства таблиц dBase:
  • простота использования;
  • совместимость с большим числом приложений.
Ниже содержится список типов полей таблиц dBase IV. Для каждого типа приводится символ, используемый для его обозначения в программе Database Desktop (это программа создания и редактирования таблиц, SQL-запросов и запросов QBE), а также описание значений, которые может содержать поле рассматриваемого типа.
Тип Обозначение Описание значения
Character C Строка символов. Длина не более 255 символов
Float F Число с плавающей точкой. Диапазон: -10308 ... 10308. Точность - 15 цифр мантиссы
Number N Число в двоично-десятичном формате BCD(BinaryCodedDecimal)
Date D Дата
Logical L Логическое значение. Допустимы значения true(истина) и false(ложь). Разрешается использование прописных букв
Memo M Строка символов. Длина не ограничена. Символы хранятся в файле с расширением dbt
OLE O Данные в формате, который поддерживается технологией OLE. Данные хранятся в файле с расширением dbt
Binary В Последовательность байтов. Длина не ограничена. Байты содержат произвольное двоичное значение, хранятся в файле с расширением dbt
 
Таблицы dBase являются достаточно простыми и используют для своего хранения на дисках относительно мало физических файлов. По расширению файлов можно определить, какие данные они содержат:
  • dbf - таблица с данными;
  • dbt - данные больших двоичных объектов, или BLOB-данные (BinaryLargeOBject). К ним относятся двоичные,меню- и OLE-поля. Memo-поле также называют полем комментариев;
  • mdx - поддерживаемые индексы;
  • ndx - индексы, непосредственно не поддерживаемые форматом dBase. При использовании таких индексов программист должен обрабатывать их самостоятельно.
Имя поля в таблице dBase должно состоять из букв и цифр и начинаться с буквы. Максимальная длина имени составляет 10 символов. В имена нельзя включать специальные символы и пробел.
 
К недостаткам таблиц dBase относится то, что они не поддерживают автоматическое использование парольной защиты и контроль целостности связей, поэтому программист должен кодировать эти действия самостоятельно.
 
Таблицы Paradox являются достаточно развитыми и удобными для создания БД. Можно отметить следующие их достоинства:
  • большое количество типов полей для представления данных различных типов;
  • поддержка целостности данных;
  • организация проверки вводимых данных;
  • поддержка парольной защиты таблиц.
Большой набор типов полей позволяет гибко выбирать тип для точного представления данных, хранимых в базе. Например, для представления числовой информации можно использовать один из пяти числовых типов. В ниже содержится список типов полей для таблиц Paradox7. Для каждого типа приводятся символ, используемый для обозначения этого типа в программе Database Desktop, и описание значений, которые может содержать поле рассматриваемого типа.
Тип Обозначение Описание значения
Alpha А Строка символов. Длина не более 255 символов
Number N Число с плавающей точкой. Диапазон: -10307 ... 10308. Точность 15 цифр мантиссы
Money $ Денежная сумма. Отличается от типа Number тем, что в значении отображается денежный знак. Обозначение денежного знака зависит от установок Windows
Short s Целое число. Диапазон: -32 768 ... 32 767
Longlnteger i Целое число. Диапазон:-2 147 483 648 ... 2 147 483 647
BCD # Число в двоично-десятичном формате
Date D Дата. Диапазон: 01.01.9999 до н. э. ... 31.12.9999
Time T Время
Timestamp   Дата и время
Memo M Строка символов. Длина не ограничена. Первые 240 символов хранятся в файле таблицы, остальные в файле с расширением mb
Formatted Memo F Строка символов. Отличается от типа Memo тем, что строка может содержать форматированный текст
Graphic G Графическое изображение. Форматы BMP, PCX, TIFF, GIF и EPS. При загрузке в поле изображение преобразуется к формату BMP. Для хранения изображения используется файл с расширением mb
OLE O Данные в формате, который поддерживается технологией OLE. Данные хранятся в файле с расширением mb
Logical L Логическое значение. Допустимы значения true(истина) и false(ложь). Разрешается использование прописных букв
Autoincrement + Автоинкрементное поле. При добавлении к таблице новой записи в поле автоматически заносится значение, на единицу большее, чем в последней добавленной записи. При удалении записи значение ее автоинкрементного поля больше не будет использовано. Значение автоинкрементного поля доступно для чтения и обычно используется в качестве ключевого поля
Binary В Последовательность байтов. Длина не ограничена. Байты содержат произвольное двоичное значение. Первые 240 байтов хранятся в файле таблицы, остальные в файле с расширением mb
Bytes Y Последовательность байтов. Длина не более 255 байтов
При работе с таблицей в среде программы Database Desktop значения полей типа Graphic, Binary, Memo и OLE не отображаются.
Имя поля в таблице Paradox должно состоять из букв (допускается кириллица) и цифр и начинаться с буквы. Максимальная длина имени составляет 25 символов. В имени можно использовать такие символы, как пробел, #, $ и некоторые другие. Не рекомендуется использовать символы ., ! и j, т.к. они зарезервированы в С++ Builder для других целей. При задании ключевых полей они должны быть первыми в структуре таблицы.
Если требуется обеспечить перенос или совместимость данных из таблиц Paradox с таблицами других форматов, желательно выбирать имя поля длиной не более 10 символов и составлять его из цифр и латинских букв.
Поддержка концепции целостности данных обеспечивает правильность ссылок между таблицами. Например, если в БД имеются таблицы клиентов и заказов, то эти таблицы могут быть связаны следующим образом: каждая запись таблицы заказов ссылается через индексное поле на запись в таблице клиентов, соответствующую сделавшему заказ клиенту. Если в таблице клиентов любым способом удалить запись с информацией о каком-либо клиенте, то BDE автоматически удалит все записи, соответствующие этому клиенту, из таблицы заказов. Такое удаление взаимосвязанных записей называют каскадным.
 
Для полей можно определить специальный диапазон, в котором должны находиться вводимые в них значения. Кроме того, для каждого поля можно определить минимальное и максимальное допустимые значения. При попытке ввода в поле значения, выходящего за допустимые границы, возникает исключение (исключительная ситуация), значение не вводится и содержимое поля не изменяется. Например, для поля salary (оклад) в качестве минимального значения логично указать ноль, тем самым в это поле запрещается вводить отрицательные значения. Максимальное значение поля salary зависит от организации, страны и других факторов.
 
Наряду с диапазоном допустимых значений для каждого поля можно задать значение по умолчанию, которое автоматически заносится в поле при добавлении к таблице новой записи.
 
При работе с конфиденциальной информацией может потребоваться защита таблиц и их полей. Для каждой таблицы Paradox следует указать основной пароль, который используется при изменениях во всей таблице, связанных со сменой структуры или с редактированием данных в любом поле. Возможно также задание дополнительного пароля, позволяющего ограничить доступ к конкретному полю или группе полей таблицы, а также набора операций, применимых к таблице (например, разрешения только на чтение записей таблицы без возможности их модификации). После установки паролей они будут автоматически запрашиваться и контролироваться при любой попытке доступа к таблице.
 
Определенным недостатком таблиц Paradox является наличие относительно большого количества типов файлов, требующихся для хранения содержащихся в таблице данных. При копировании или перемещении какой-либо таблицы из одного каталога в другой необходимо обеспечить копирование или перемещение всех файлов, относящихся к этой таблице.
 
Файлы таблиц Paradox имеют следующие расширения:
  • db - таблица с данными;
  • mb - BLOB-данные;
  • рх - главный индекс (ключ);
  • xg* и yg* - вторичные индексы;
  • val - параметры для проверки данных и целостности ссылок;
  • tvи fam - форматы вывода таблицы в программе Database Desktop.
Указанные файлы создаются, только если в них есть необходимость; конкретная таблица может не иметь всех приведенных файлов.
Кроме названных файлов при работе в сети для управления доступом к таблицам Paradox используются файлы с расширением net.
Если заметили ошибку, выделите фрагмент текста и нажмите Ctrl+Enter

Добавить комментарий