Встроенная в Delphi база данных. Часть 1

Источник: programmersclub

Автор: Руслан Аблязов

     В комплекте с Delphi 7 поставляются сразу несколько библиотек для работы с базами данных (ADO, BDE, dbExpress, InterBase и др.). Для того чтобы создать приложение, работающее с локальной базой данных, то вы обычно используете библиотеку BDE. Эта библиотека создана компанией Borland и уже порядком устарела. Но без определённой подготовки операционной системы эти компоненты работать не будут. Есть альтернатива этим компонентам.

Существует автономный компонент TClientDataSet который использует свой собственный формат данных.

    Итак, переходим к практике. Компонент TClientDataSet использует файлы с расширением *.CDS и *.XML мы будем рассматривать формат CDS, так как XML формат занимает вдвое больше места на диске и такой файл легко можно изменить, открыв его через блокнот. Этот компонент при создании проецирует файл в память и модифицирует только память, а при уничтожении данные записываются в файл целиком. Путь к файлу определяет свойство FileName. Файлы формата CDS можно найти в папке program files\Common Files\Borland Shared\Data. Давайте сначала откроем один из них. Скопируем один из них в папку c:\data .

    Кидаем на форму 4 компонента
    1.  TClientDataSet
    2.  TDataSource
    3.  TDBGrid
    4.  TDBNavigator

    В результате :
    1.  DataSource1
    2.  ClientDataSet1
    3.  DBGrid1
    4.  DBNavigator1

    Настраиваем их свойства так чтобы получилось примерно так:
    DBNavigator1.DataSource = DataSource1
    DBGrid1.DataSource = DataSource1
    DataSource1.DataSet = ClientDataSet1
    ClientDataSet1.FileName = 'D:\111\www\customer.cds'
    ClientDataSet1.Active = True (самое главное этого не забыть :-))

    И всё готово. Вы сразу у меня спросите: "А как создать новую таблицу?".
     Всё очень просто даже не нужно НИКАКИХ дополнительных программ, только компонент TClientDataSet и конечно Delphi.

    1.  Создаём новый проект (можно даже его не сохранять) и добавляем на форму компонент TClientDataSet.
    2.  Сначала определим структуру таблицы. Для этого открываем свойство FieldDefs нашего компонента. Открывается окно "Editing ClientDataSet1.FieldDefs" жмём "добавить новый", и определяем свойства поля (тип, формат, размер и т.д.).
    3.  Теперь самое главное. Щёлкаем правой кнопкой мыши на компоненте TClientDataSet и выбираем пункт CreateDataSet. Потом ещё раз открываем контекстное меню и выбираем пункт "Save to binary MyBase file" и сохраняем файл туда, куда нам надо.

     Всё готово теперь у нас есть файл CDS. Можно закрывать данный проект и создавать новый, так как это было показано выше. Изменяете его, как хотите, добавляйте, удаляйте, изменяйте короче как обычно. Как модифицировать файл программно и фильтровать и индексировать записи, я вам расскажу позже.

 


Страница сайта http://test.interface.ru
Оригинал находится по адресу http://test.interface.ru/home.asp?artId=21976