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

5 минут на чтение

file-bd-delphiВсем привет дорогие друзья! Продолжаем нашу тему, в которой мы рассматриваем работу с файловыми базами данных в Delphi. Мы продвигаемся постепенно, в первой статье рассмотрели общую структуру, во второй статье мы рассмотрели, как можно сохранять и открывать наш набор данных (только он у нас был пустой).

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

Для начала не забудьте прочитать предыдущие статьи (это для тех, кто пропустил данную тему раньше, а только присоединился сейчас):

  • Работа с файловыми базами данных. Часть 1 (описание общей структуры и схемы)
  • Работа с файловыми базами данных. Часть 2 (сохранение и загрузка набора данных)

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

Ну что, давайте создадим проект в Delphi, разместим на форме следующие компоненты:

  • TClientDataSet
  • TDBGrid
  • TButton
  • TDataSource
  • TOpenDialog
  • TSaveDialog

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

clientdataset-delphi

 

Количество кнопок у Вас может быть разное. Установите так, чтобы мы могли сделать поиск, редактировать, удаление и добавление. А там по вашему усмотрению. Тут я не буду рассказывать, как компонент связывать между собой, а также как сохранять набор данных в файл и открывать его.

Начнем мы с добавления записи. Когда мы работали с ADO, то мы использовали процедуру Insert. Тут тоже самое, для добавления нам необходимо использовать данную процедуру, затем задать значения нашим полям и сохранить набор данных. В общем, добавление записи будет выглядеть следующим образом:

procedure TForm1.Button3Click(Sender: TObject);
begin
  ClientDataSet1.Insert;
  ClientDataSet1.Fields.Fields[1].AsVariant:='test';
  ClientDataSet1.Fields.Fields[2].AsVariant:='test';
  ClientDataSet1.Post;
  ClientDataSet1.SaveToFile('test.xml',dfXML);
end;

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

Для редактирования данных, мы будем использовать процедуру Edit, а код будет следующим:

procedure TForm1.Button4Click(Sender: TObject);
begin
  ClientDataSet1.Edit;
  ClientDataSet1.Fields.Fields[1].AsVariant:='test2';
  ClientDataSet1.Fields.Fields[2].AsVariant:='test2';
  ClientDataSet1.Post;
  ClientDataSet1.SaveToFile('test.xml',dfXML);
end;

То есть, смысл тот же самый. Нам для начала необходимо выделить запись в компоненте TDBGrid, которую хотим редактировать, затем переводим набор данных в редактирование, задаем новые значения и сохраняем его. Кстати, Вы можете задавать не номера полей, а их название, это будет выглядеть следующим образом:

ClientDataSet1.Fields.FieldByName('Phone').AsVariant:='test2';

С удалением все тоже самое, используем процедуру Delete. Это будет выглядеть следующим образом:

procedure TForm1.Button5Click(Sender: TObject);
begin
   ClientDataSet1.Delete;
   ClientDataSet1.SaveToFile('test.xml',dfXML);
end;

Для поиска можно использовать фильтры, либо же использовать функцию Locate:

procedure TForm1.Button6Click(Sender: TObject);
begin
   ClientDataSet1.Locate('Phone','test2',[loCaseInsensitive]);
end;

Вы также можете перемещаться по набору данных, используя процедуры:

  • Last
  • Prior
  • Next
  • First

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

Facebook Vk Ok Twitter LinkedIn Telegram

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

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