Сергей Николаевич Талипов

Базы данных на Delphi 7


Скачать книгу

е баз данных – очень большой и серьезный раздел самого что ни на есть практического программирования, многие программисты большую часть своего времени тратят именно на проектирование баз данных и разработку приложений, работающих с ними. Это неудивительно – в настоящее время каждая государственная организация, каждая фирма или крупная корпорация имеют рабочие места с компьютерами. Имеется масса данных, которые нужно не только сохранить, но и обработать, получить комплексные отчеты. Без баз данных сегодня не обойтись. А завтра они будут еще нужней.

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

      При написании программ работы с базами данных (БД) на «Делфи» обычно используется метод доступа через BDE – систему. BDE – система представляет из себя набор драйверов, связывающих прикладную программу на «Делфи» с физическими файлами БД.

      

      В «Делфи» понятие «таблица данных» и «база данных» различаются. Таблицей называется совокупность данных, нормализованных в табличную форму. Примером таблиц служат классические БД типа FoxPro и DBase. База данных – это файл, содержащий в себе несколько таблиц, которые имеют, как правило, внутренние взаимосвязи по ключевым полям. Базы данных используются в крупных промышленных СУБД типа «ORACLE» и других клиент – серверных системах.

      Для ознакомления с программированием баз данных будем пользоваться таблицами типа DBase и FoxPro. Для начала любой работы с БД из под «Делфи» необходимо настроить BDE – систему. Для этого служит специальная программа «BDE Administrator». Для создания таблиц и наполнения их данными можно воспользоваться программой «DataBase Desktop» из установленного комплекта «Делфи».

      2. ПРОСТЕЙШАЯ ПРОГРАММА

      Для создания простейшей программы понадобится одна форма, не визуальные компоненты «DataSource» и «Table» из вкладки «Data Access», и визуальные компоненты «DBGrid» и «DBGrid» из вкладки «Data Controls». Расположите компоненты на форме как показано на рис.1.

      Рис. 1

      Не визуальный компонент «Table» предназначен для непосредственного доступа к таблице данных через BDE – систему. Визуальный компонент «DBGrid» служит для просмотра/редактирования записей в таблице данных, компонент «DBNavigator» служит для перемещения (навигации) по таблице данных. Не визуальный компонент «DataSource» служит посредником между компонентом «Table» и всеми визуальными компонентами.

      

      

      Программная часть программы состоит из двух обработчиков событий «OnActivate» и «OnClose» для формы. Ниже приведен исходный текст данных обработчиков.

      procedure TForm1.FormActivate(Sender: TObject);

      begin

      try { Установка защиты на операторы }

        Table1.DatabaseName:='c:\uoo\dbf'; { Установка пути к таблице данных }

        Table1.TableName:='u2_spec.dbf'; { Указание имени файла таблицы данных с расширением }

        DataSource1.DataSet:=Table1; { Связуем компонент Table1 с компонентом DataSource1 }

        DBGrid1.DataSource:=DataSource1; { Связуем компонент DBGrid1 с компонентом DataSource1 }

        DBNavigator1.DataSource:=DataSource1; { Связуем компонент DBNavigator1 с компонентом DataSource1 }

        if not Table1.active then Table1.Open; { Если таблица еще не открыта, то открыть ее }

      except { Если произошла ошибка при открытии таблицы данных, то выдать сообщение }

        showmessage('Error !');

      end;

      end;

      procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);

      begin { Если таблица данных открыта, то закрыть ее }

      try if Table1.active then Table1.Close; except end;

      end;

      ЛЕКЦИЯ № 2

      1. МЕТОДЫ И СВОЙСТВА КОМПОНЕНТ ДОСТУПА К ТАБЛИЦАМ ДАННЫХ

      Компонент “TTable” служит для непосредственной связи с базой данных (таблицей). Данный компонент имеет ряд основных методов:

      Open – открытие базы данных

      Close – закрытие базы данных

      Refresh (для BDE) / Requery (для ADO) – обновление базы данных с диска

      Edit – перевод БД в режим редактирования текущей записи

      Post – запоминание изменений для редактируемой текущей записи (вызывается после метода «Edit»)

      Cancel – отмена изменений для редактируемой текущей записи (вызывается после метода «Edit», если нужно отменить изменения)

      Insert – вставка новой пустой записи в БД

      Append – добавление в конец новой пустой записи в БД

      Delete – удаление текущей записи из БД

      EmptyTable – удаление всех данных в таблице

      DeleteTable – удаление БД с диска

      First – переход на первую запись БД

      Last – переход на последнюю