Работа с файловыми базами данных в Delphi. Часть 1

3 минуты на чтение

file-bd_2Всем привет ребята! Продолжаем рассматривать работу с базами данных в Delphi. Сегодня мы начнем рассматривать базы данных, которые работают на файлах. Да, сейчас базы данных на файлах не настолько популярны, но раньше они расправлялись с хорошим объемом информации, да и сейчас они применяются, я так думаю, где необходимо использовать базу данных небольшого объема.

Естественно, базу данных на файлах можно отнести к файловой модели сервера, если использовать ее как сетевую. Такая модель сервера имеет ряд недостатков:

  • Будет большой сетевой трафик: передаваться по сети будет множество файлов, блоков информации и так далее
  • Для доступа к данным мы можем использовать только лишь файловые команды
  • Защиту базы данных мы можем производить только лишь на уровне файловой системы

Конечно, если у Вас база данных рассчитана на одного пользователя, то с легкостью можно использовать базу данных, основанную на файлах. Файловую базу данных, в некоторых случаях также удобно использовать, так как нет необходимости покупать дорогие СУБД, а также их потом администрировать, хотя в настоящее время, во время высоких технологий, больших объемов информации, а также больших сетей, не использовать СУБД просто невозможно.

Раньше, на сколько я знаю, 1С:Предприятие работало на файловых базах данных, хотя, наверное, и сейчас там они встроены, так что как видите, крупные проекты до сих пор используют такую модель данных.

Для организации файловой базы данных нам поможет компонент TClientDataSet, который располагается на вкладке DataAccess. Поэтому, создаем проект в Delphi и устанавливаем на форму компонент TClientDataSet. В данном компоненте есть замечательное свойство – FieldDefs, с помощью которого мы можем создавать список полей, в которых будут храниться данных, их размер, а самое главное тип. Для того чтобы создать список полей, нам необходимо нажать на свойство FieldDefs и с помощью встроенного редактора задать список полей, хотя это можно сделать с помощью кода. С помощью встроенного редактора создаем нашу будущую базу данных со списком полей, их типом, а также размером.

Базу данных можете придумать любую, например база студентов и их номеров телефонов. У меня получились следующие поля:

file-bd

 

Итак, пройдемся по полям:

  • ID – имеет тип ftAutoInc
  • Name – имеет тип ftString
  • Phone – имеет тип fsString

Сам тип задается в свойстве DataType, а размер поля, если это так важно, то он задается в свойстве Size.

Теперь нам необходимо создать пустой набор данных в памяти компьютера. Для этого можно нажать правой кнопкой мыши по компоненту TClientDataSet и нажать на пункт контекстного меню – Create Dataset, то есть создать набор данных. Мы также можем создать данный набор с помощью процедуры:

Procedure CreateDataSet;

После того, как наша будущая структура таблицы подготовлена, нам необходимо ее сохранить на компьютере, то есть на винчестере. Мы можем также воспользоваться контекстным меню, для этого нам необходимо по компоненту нажать правой кнопкой мыши и там будут доступны следующие пункты меню:

  • Save to MyBase Xml Table… (это сохранить таблицу в файл формата XML)
  • Save to MyBase Xml UTF8 Table… (это сохранить таблицу в файл формата XML и в кодировке UTF8)
  • Save to binary MyBase file… (это сохранить таблицу в бинарный файл)

Я сохранил таблицу в формате XML, а также кодировке UTF8. Кроме этого таблицу можно сохранить и программным методом, с помощью процедуры SaveToFile, то об этом мы поговорим уже в следующей статье. Сам XML-файл у меня получился следующей структуры:

file-bd_1

 

В следующих статьях мы будем его наполнять, загружать, а также отображать данные в нашем проекте.

Facebook Vk Ok LinkedIn Telegram

Похожие записи:

Всем привет дорогие друзья! Продолжаем нашу тему, в которой мы рассматриваем работу с файловыми базами данных в Delphi. Мы продвигаемся постепенно, в первой статье рассмотрели общую структуру, во второй статье мы рассмотрели, как можно сохранять и открывать наш набор данных (...
Всем привет! Ну что, продолжаем рассматривать работу с файловыми базами данных в Delphi. Мы закончили прошлую статью на том, что мы сохранили нашу БД в XML-формат. Но не стоит забывать о том, что сохранять структуру таблицы, а также ее содержимое можно не только в файл, но и в поток...
Всем привет! Продолжаю рассматривать работу с файловыми базами данных в Delphi. Не знаю, сколько еще статей напишу, но пока что продолжаю. Сегодняшняя статья будет посвящена работе с агрегирующими функциями, а также агрегатными полями. Согласитесь, что агрегирующие функции я...