.dbf - .dbf

.dbf
.dbf File Extension.png
Расширение имени файла
.dbf
РазработанdBase
изначальный выпуск1983; 37 лет назад (1983)
Последний релиз
7
Интернет сайтбаза данных.com

В .dbf расширение файла представляет собой dBase файл базы данных. Тип файла был введен в 1983 году с dBASE II. Файловая структура получила множество функций и возможностей. Было добавлено несколько дополнительных типов файлов для поддержки хранения и обработки данных. Текущий уровень файла .dbf называется 7 уровень. Формат .dbf поддерживается рядом база данных товары.

Обзор

Оригинал dBASE база данных была известна как Project Vulcan и была создана Уэйн Рэтлифф в 1978 году. В то время файл, содержащий данные, был простой таблицей, в которую можно было добавлять, изменять, удалять или печатать данные с помощью ASCII набор символов.[1] По мере того как продукт становился все более популярным, базовый тип файла .dbf был расширен, и были добавлены дополнительные файлы для расширения возможностей системы баз данных. Несмотря на dBASE будучи IDE (интегрированная среда разработки), система баз данных, компилятор и построитель приложений баз данных, исходный файл .dbf все еще использовался для фактического механизма хранения данных.

История формата файла

Проект Вулкан - CP / M (Уровень 1) Общедоступной информации об исходном макете нет. Что известно, так это то, что это была простая таблица, которая позволяла добавлять, удалять, изменять и выводить данные ASCII. Он был написан для 8-битных машин, которые запускали CP / M.

dBASE II - MS-DOS (уровень 2) был первым крупным релизом Эштон-Тейт. В нем было много улучшений, помимо простой структуры таблиц Project Vulcan.[2]

  • Все еще написано для 8-битных вычислений
  • Увеличено количество полей с 16 до 32
  • Введена процедура сортировки
  • 16-битная версия, наконец, выпущена в апреле 1983 года (версия 2.4)

dBASE III - MSDOS (уровень 2sh) (версия "1.0") была выпущена в июне 1984 года. Это было полностью 16-битное приложение. Формат файла dBASE III - это переходный этап между dBASE II и dBASE III +.

dBASE III + - MS-DOS (уровень 3) был выпущен в декабре 1985 года. dBASE III + открыл современный формат файлов dBASE. Он несовместим с форматом файлов dBASE III.

dBASE IV - MS-DOS (уровень 4)

  • 1.0 x322, октябрь 1988 г.
  • 1.0 x55, март 1993 г. - Компилятор dBASE
  • 2.0 x12, октябрь 1993 г. Включает исправления в dBASE IV v2.0 x16 и выше (не x17, т.е. не совместим с VLM, совместимы с dB5D exe). Это также новая версия, которая содержит новые функции, которых нет в продукте V1.0:
    • 32-битное поколение
    • Автоматическая компиляция и компоновка
    • Меньший размер .EXE
    • Пользовательский интерфейс на основе меню
    • Компоновщик может производить комбинированный вывод .DBO
    • Компоновщик может создавать файл .MAP
    • Компилятор поддерживает альтернативные форматы даты
    • переключатели командной строки принимать подстановочные знаки в именах файлов.

dBASE V - MS-DOS (уровень 5)

  • 1.0 x46 июнь 1994

BDE - ядро ​​базы данных Borland 2.52

Это было последнее обновление 16-разрядной версии ядра СУБД Borland (BDE). Загрузите и разархивируйте во временную папку и запустите программу SETUP.[3]

dBASE V - MS-Windows (уровень 5)

  • 5.5 b673 июль 1995 г.

dBASE 7 - MS-Windows (уровень 7)

  • 7.0 b1345 декабрь 1997 г. Полная 32-разрядная версия для Win 95 / NT

Структура уровня 7 является последней, поддерживаемой dBASE и BDE.[4]

Уровень 7 принес много улучшений. Максимальная длина имен полей увеличена с 10 до 31 символа. Были добавлены некоторые новые типы полей, такие как поле автоинкремента,[5] что предотвращает создание повторяющихся номеров записей в одной таблице.

Однако некоторые сторонние приложения распознают таблицы уровня 7. Для файлов .dbf, которые используются совместно с такими приложениями, новые функции не могут быть использованы.

BDE версии 5.1.0

Значительные улучшения по сравнению с предыдущими выпусками.[6] Есть также некоторые ограничения в отношении того, что BDE может справиться.[7]

Формат файла уровня 5 DOS dBASE

В dBASE V файл .dbf состоит из заголовка, записей данных и маркера конца файла.

  • Заголовок содержит информацию о файле, такую ​​как количество записей и количество типов полей, используемых в записях.
  • Записи содержат фактические данные.
  • Конец файла отмечается одним байтом со значением 0x1A.

Заголовок файла

Макет заголовка файла в dBase уровня 5
БайтСодержаниеСмысл
01 байтДействительный dBASE для файла DOS; биты 0–2 указывают номер версии, бит 3 указывает на наличие dBASE для мемо-файла DOS, биты 4-6 указывают на наличие таблицы SQL, бит 7 указывает на присутствие любого мемо-файла (либо dBASE m PLUS, либо dBASE для DOS)
1–33 байтаДата последнего обновления; в формате ГГММДД
4–732-битное числоКоличество записей в файле базы данных
8–916-битное числоКоличество байтов в заголовке
10–1116-битное числоКоличество байтов в записи
12–132 байтаЗарезервированный; заполнить 0
141 байтФлаг, указывающий на незавершенную транзакцию[примечание 1]
151 байтФлаг шифрования[заметка 2]
16–2712 байтЗарезервировано для dBASE для DOS в многопользовательской среде
281 байтФлаг производственного файла .mdx; 1, если есть рабочий файл .mdx, 0, если нет
291 байтID языкового драйвера
30–312 байтаЗарезервированный; заполнить 0
32–п [заметка 3][примечание 4]32 байта каждыймассив дескрипторов полей (расположение дескрипторов см. ниже)
п + 11 байт0x0D как терминатор массива дескриптора поля
  1. ^ Функция ISMARKEDO проверяет этот флаг. BEGIN TRANSACTION устанавливает его в 1, END TRANSACTION и ROLLBACK сбрасывает его в 0.
  2. ^ Если этот флаг установлен в 1, сообщение База данных зашифрована появляется. Изменение этого флага на 0 удаляет сообщение, но не расшифровывает файл.
  3. ^ Максимальное количество полей - 255.
  4. ^ п означает последний байт в массиве дескрипторов поля. Размер массива зависит от количества полей, используемых в базе данных. n равно 31 + 32 * (количество полей).

Массив дескрипторов поля

Расположение дескрипторов полей на уровне 5 dBase (используется внутри заголовка файла)
БайтСодержаниеСмысл
0–1011 байтИмя поля в ASCII (заполнено нулями)
111 байтТип поля. Допустимые значения: C, D, F, L, M, или же N (значения см. в следующей таблице)
12–154 байтаЗарезервированный
161 байтДлина поля в двоичном формате (максимум 254 (0xFE)).
171 байтДесятичное число полей в двоичном формате
18–192 байтаID рабочей области
201 байтПример
21–3010 байтЗарезервированный
311 байтФлаг рабочего поля MDX; 1, если поле имеет тег индекса в производственном файле многомерных выражений, 0, если нет

Записи базы данных

Каждая запись начинается с 1-байтового флага «удаления». Значение байта - это пробел (0x20), если запись активна, или звездочку (0x2A), если запись удалена. Поля упаковываются в записи без разделителей полей или ограничителей записи.

Все данные поля в формате ASCII. В зависимости от типа поля приложение накладывает дополнительные ограничения:

Типы полей на уровне 5 dBase
Тип поляМнемоническийЧто он принимает
CХарактерЛюбой текст ASCII (заполненный пробелами до длины поля)
DДатаЦифры и символ для разделения месяца, дня и года (хранятся внутри как 8 цифр в формате ГГГГММДД)
FПлавающая точка-, ., 09 (выровнено по правому краю, дополнено пробелами)
LЛогическийY, y, N, п, Т, т, F, ж, или же ? (при неинициализации)
MПамяткаЛюбой текст ASCII (хранящийся внутри как 10 цифр, представляющих номер блока .dbt, выровненный по правому краю, заполненный пробелами)
NЧисловой-, ., 09 (выровнено по правому краю, дополнено пробелами)

Поля Memo и файл .DBT

Мемо-файл (.DBT) состоит из блоков, пронумерованных последовательно (0,1,2 и т. Д.). SET BLOCKSIZE определяет размер каждого блока. Первый блок, блок 0, представляет собой заголовок мемо-файла.

Каждое мемо-поле каждой записи в файле .DBF содержит номер блока (в ASCII), с которого начинается мемо-поле. Если мемо-поле не содержит данных, файл .DBF содержит пробелы (0x20), а не число.

При изменении содержимого мемо-поля может измениться и номер его блока. Т.е. меморандум перемещается. В этом случае номер в файле .DBF обновляется.

В dBASE III PLUS пространство, занимаемое удаленным текстом в мемо-поле, нельзя повторно использовать - размер файла .DBT увеличивается каждый раз, когда текст добавляется, даже если другой текст был удален. dBASE для DOS может повторно использовать это пространство для нового текста. dBASE IQ PLUS всегда добавлял новый текст в конец файла .dbt.

Другие типы файлов, найденные в dBASE

dBASE определяет множество типов файлов. Он также распознает некоторые файлы операционной системы и файлы других продуктов. В таблице ниже сначала перечислены наиболее часто используемые форматы. Он был составлен из документации по dBASE III +, dBASE IV и dBASE CLASSIC.[8]

Типы файлов, распознаваемые dBASE, вплоть до dBASE CLASSIC
РасширениеСодержание файла
.DBFФайл базы данных
.DBKФайл резервной копии базы данных
.DBOОбъектный файл команд и процедур
.DBTПамятный файл базы данных
.DEFФайл определения селектора
.DEMОпределите операторы для формы CUA
.DIFФормат обмена данными или файл VisiCalc; используется с APPEND FROM и COPY TO
.DOCФайл документации; Только генератор приложений
.ERRСоздается, если во время генерации формы возникает ошибка или если возникает неисправимая ошибка
.FILФайл объекта дизайна списка файлов
.EMOСкомпилированный файл формата (.fmt)
.FMTСгенерированный файл формата; из файла .scr
.FNLОтчет о файле списка двоичных имен
.FR3Переименован старый файл формы отчета dBASE HI (.frm)
.ЭРГСгенерированный файл формы отчета; из файла .frm
.FRMФайл формы отчета
.FROФайл скомпилированной формы отчета (.ERG)
.FW2, .FW3, .FW4Электронная таблица каркаса или файл базы данных; используется для импорта и экспорта
.GENФайл шаблона
.GRPФайл группы Windows для dBASE для DOS
.HLPdBASE для файлов справки DOS
.ICOdBASE для файла значка DOS под Windows
.INIWindows-подобный файл INI для сохранения информации о состоянии конструктора этикеток и среды IDE.
.КЛЮЧФайл библиотеки макросов нажатия клавиш
.LB3Переименован старый файл формы метки dBASE III (.LBL)
.LBGСгенерированный файл формы этикетки; из файла .LBL
.LBLФайл формы этикетки
.LBOФайл скомпилированной формы этикетки (.LBL)
.БРЕВНОФайл журнала транзакций
.LNLМетка файла списка двоичных имен
.MBKФайл резервной копии с несколькими индексами
.MDXМножественный индексный файл
.MEMФайл памяти
.NDXЕдиный индексный файл
.OVLdBASE для файла оверлея DOS
СДСФайл Microsoft Windows для приложений, отличных от Windows
.POPФайл объекта дизайна всплывающего меню; Только генератор приложений
.PR2Файл драйвера принтера
.PRDФайл, содержащий информацию о драйвере принтера для DBSETUP.
.PRFРаспечатать файл формы
.PRGФайл команды или процедуры dBASE
.PRSФайл команды или процедуры dBASE SQL
.PRTФайл вывода на принтер
.QBEФайл запроса QBE
.QBOСкомпилированный файл запроса QBE (.QBE)
.QRYФайл запроса dBASE El
.RESФайл ресурсов
.RPDФайл RapidFile; используется для импорта и экспорта
.SC3Переименован старый файл экрана dBASE III (.SCR)
.SCRФайл экрана
.SNLФайл списка экранных двоичных имен
.STRФайл объекта проектирования структурного списка; Только генератор приложений
.T44 / .W44Промежуточные рабочие файлы; используется SORT и INDEX
.TBKФайл резервной копии памяти базы данных
.ТЕКСТФайл вывода текста ASCII
.UPDФайл запроса обновления QBE
.UPOСкомпилированный файл запроса обновления QBE (.UPD)
.VALФайл объекта дизайна списка значений; Только генератор приложений
.VMCКонфигурационный файл; для диспетчера виртуальной памяти (VMM)
.VUEПосмотреть файл
.ПОБЕДИТЬЛогическое окно сохранения файла
.WKS, .WK1Файл Lotus 1-2-3; используется с APPEND FROM и COPY TO

Смотрите также

Рекомендации

  1. ^ Пауэлл, Дэвид Б. (1984-02-07). «Из подвала в зал заседаний». Журнал ПК. п. 131. Получено 24 октября 2013.
  2. ^ Пауэлл, Дэвид Б. (1984-02-07). «От подвала до зала заседаний». Журнал ПК: 131–135. Получено 2014-08-15.
  3. ^ «Загрузка документации по dBASE - dBase, LLC». Dbase.com. Получено 2014-08-15.
  4. ^ "Файловая структура dBASE .DBF". Dbase.com. Получено 2014-08-15.
  5. ^ Жан-Пьер Мартель. "Поля автоинкремента". Dbase.com. Получено 2014-08-15.
  6. ^ Жан-Пьер Мартель. «Новый BDE 5.1.0 и Visual dBASE 7.01». Dbase.com. Получено 2014-08-15.
  7. ^ [1]
  8. ^ "dBASE Classic". dBASE классический. Получено 2014-08-15.

дальнейшее чтение

внешняя ссылка