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

 

Простая база данных "Телефонная книжка"

 

В качестве хранилища данных будем использовать обычную таблицу tab1.dbf с полями name и tel, где будем хранить ФИО человека и его телефон.

Сама табличка tab1.dbf может быть создана разными способами, или может быть табличкой какой нибудь учетной системы, например 1С.

В принципе, аналогичным образом можно использовать любое хранилище, например SQL сервер или базу Microsoft Access.

Таблица tab1.dbf находится в папке с исходниками.  В описанном ниже примере эта таблица лежит в корне диска D.

 

Сначала откройте Администратор источника данных ODBC, и в закладке Пользовательский DNS нажмите кнопку Добавить.

a001 Простая база данных на Delphi7

 

В открывшемся окне выберите Microsoft dBase Driver (.dbf) и нажмите Готово.

 

a002 Простая база данных на Delphi7

В Установках драйвера ODBC для dBase придумайте название источника данных (у нас "dbf").

Затем снимите галочку "Использовать текущий каталог " и выберите место, где лежит наша таблица tab1.dbf, в примере это D:\

 

a003 Простая база данных на Delphi7

После ввода имени источника данных и каталога нажмите ОК, и затем в Администраторе источника данных ODBC нажмите OK, Администраторе источника данных ODBC закроется.

Следующим этапом создаем новый проект.

На форме размещаем два элемента для ввода ФИО и телефона - Edit1 и Edit2, и Label1 и Label2 для обозначения названий этих полей.

 

1 Простая база данных на Delphi7

 

Затем размещаем две кнопки -  Button1 и Button2.

 

2 Простая база данных на Delphi7

 

Затем в свойство Caption элементов вводим названия элементов Label1 - ФИО, Label2-Телефон.

Для кнопок в свойство Caption вносим для Button1-Добавить, в ней будет код для добавления записей в базу, и для Button2-Удалить, в ней будет код для удаления записей.

 

3 Простая база данных на Delphi7

 

Затем из закладки Data Access на панели компонентов помещаем на форму компонент DataSource1.

 

4 Простая база данных на Delphi7

 

Затем переходим в закладку BDE и оттуда помещаем на форму компонент Table1.

 

5 Простая база данных на Delphi7

 

Затем переходим в закладку Data Controls и оттуда помещаем на форму компонент DBGrid1.

 

6 Простая база данных на Delphi7

 

Затем мышкой выделите компонент DataSource1 и на панели Object Inspector установите для него свойство DataSet равным значению Table1 (можно выбрать из выпадающего списка).

 

7 Простая база данных на Delphi7

 

Затем раскройте плюсиком ветку DataSet  на панели Object Inspector и для свойства DatabaseName выберите источник данных dbf, который мы добавили в источники данных ODBC в самом начале урока.

 

8 Простая база данных на Delphi7

 

Затем для свойства TableName выберите нашу табличку tab1, которую мы добавили как источник данных "dbf" в самом начале урока.

 

9 Простая база данных на Delphi7

 

Для компонента Table1  параметр DatabaseName должен стоять "dbf", а параметр TableName должен быть равен значению "tab1".

 

Для компонента DBGrid1  параметр DataSource должен стоять "DataSource1", а параметр  DataSet должен быть "Table1".

 

Затем в свойствах компонента DataSource1 сделаем свойство Active равным True, сделав этот источник данных активным.

 

10 Простая база данных на Delphi7

 

Теперь вставим код в кнопки.

 

Сначала дважды щелкнем мышкой по кнопке Добавить и в событие Button1Click вставим следующий код:

 

11 Простая база данных на Delphi7

 

procedure TForm1.Button1Click(Sender: TObject);
begin

with Table1 do
begin

Insert;
FieldByName('name').AsString := trim(Edit1.Text);
FieldByName('tel').AsString := trim(Edit2.Text);
Post;

end;

Edit1.Text:='';
Edit2.Text:='';

end;

 

Это код для добавления строчки в таблицу tab1.

 

Сначала добавляется строчка со значениями ФИО и Телефона, потом эти два поля ввода делаются снова пустыми, для следующего ввода.

 

Потом дважды щелкнем мышкой по кнопке Удалить и в событие Button2Click вставим следующий код:

 

12 Простая база данных на Delphi7

 

procedure TForm1.Button2Click(Sender: TObject);
begin

     with table1 do
     begin
       Delete;
     end;
     
end;

Для полноты картины добавим еще два компонента, Edit3 и Button3 И сделаем из них поиск по таблице.

 

Дважды щелкнем мышкой по кнопке "поиск" и в событие Button3Click вставим следующий код:

 

13 Простая база данных на Delphi7

 

procedure TForm1.Button3Click(Sender: TObject);
begin

if trim(Edit3.Text)='' then
begin

Table1.Filtered:=false;

end
else begin

Table1.Filter:='name='+chr(39)+trim(Edit3.Text)+chr(39);
Table1.Filtered:=true;

end;

end;

 

Данный код осуществляет поиск по ФИО и отображает в таблице tab1 записи, где поле name совпадает с введенным в Edit3 текстом, а если поле поиска пустое, то фильтр при нажатии на Button3 снимается.

 

В конце дважды щелкнем мышкой по основной форме и в событие FormCreate вставим следующий код:

procedure TForm1.FormCreate(Sender: TObject);
begin
Edit1.Text:='';
Edit2.Text:='';
Edit3.Text:='';
end;

Этот код делает все поля ввода (ФИО, телефон и поиск) пустыми при загрузке формы.

 

Ну и по итогам разместим все элементы формы в удобном виде и введем название основной формы нашей программы- "ТЕЛЕФОННАЯ КНИЖКА".

 

14 Простая база данных на Delphi7

 

Запускаем проект на выполнение и получается вот такая простенькая база данных "ТЕЛЕФОННАЯ КНИЖКА".

 

prog1 Простая база данных на Delphi7

 

Сначала вводится ФИО и телефон в поля ввода

 

prog2 Простая база данных на Delphi7

 

Затем нажимаем кнопку Добавить и строчка с ФИО и телефоном добавляется в таблицу.

 

prog3 Простая база данных на Delphi7

 

При вводе в поле поиска искомого ФИО и нажатия кнопки "поиск" в таблице отобразятся строки, где есть искомое ФИО.

 

prog4 Простая база данных на Delphi7

 

Для снятия фильтра очищаем поле поиска и снова нажимаем кнопку "поиск".

 

prog5 Простая база данных на Delphi7

 

Для удаления человека из базы выбираем строчку и нажимаем кнопку Удалить.

 

prog6 Простая база данных на Delphi7

 

Естественно, Вы можете сделать в базе любые другие столбцы в зависимости от потребностей.

 

Скачать исходники базы данных "ТЕЛЕФОННАЯ КНИЖКА" на Delphi7

 

Когда я уже сделал этот урок, то наткнулся в интернете на  Пошаговое описание создания базы данных (на www.araxgroup.ru ), которое очень похоже по смыслу на изложенную выше информацию, там тоже разбирается пример создания "Телефонной книжки" и он может быть также интересен тем, кто начинает знакомство с базами данных.

И там-же для себя нашел очень неплохую бесплатную программку для учета клиентов и заказов, называется Клиенты 2.0.9