- •Задания и методические указания к выполнению лабораторных работ
- •Содержание
- •Лабораторная работа №1 Создание приложения по технологии bde на основе заимствованных таблиц
- •Теоретическая часть
- •Практическая часть
- •Лабораторная работа №2 Разработка приложений с использованием технологии bde на основе создания собственных таблиц
- •Теоретическая часть
- •Практическая часть
- •Лабораторная работа №3 Использование мастера конструирования форм
- •Теоретическая часть
- •Практическая часть
- •Лабораторная работа №4 Отбор записей в таблице базы данных
- •Теоретическая часть
- •Практическая часть
- •Лабораторная работа №5 Динамически создаваемые псевдонимы
- •Теоретическая часть
- •Практическая часть
- •Лабораторная работа №6 Создание запросов с использованием компонента tQuery
- •Теоретическая часть
- •Практическая часть
- •Лабораторная работа №7 Работа с одной таблицей. Создание подключения к базе данных
- •Лабораторная работа №8 Связь таблиц
- •Лабораторная работа №9 Метод GetTableNames
- •Теоретическая часть
- •Практическая часть
- •Лабораторная работа №10 Сортировка записей
- •Теоретическая часть
- •Практическая часть
- •Лабораторная работа №11 Компонент tadoQuery и его свойства
- •Теоретическая часть
- •Практическая часть
- •1. Свойство sql
- •2. Свойство Parameters
- •Лабораторная работа №12 Фильтрация записей
- •Теоретическая часть
- •Практическая часть
- •Задание для самостоятельного выполнения
- •Лабораторная работа №13 Создание отчетов
- •Теоретическая часть
- •Практическая часть
- •Лабораторная работа №14 Управление транзакциями в sql Server
- •Лабораторная работа №15 Использование доменов и хранимых процедур
- •Список рекомендуемой литературы
Лабораторная работа №2 Разработка приложений с использованием технологии bde на основе создания собственных таблиц
Цель работы:
- научиться разрабатывать приложения по технологии BDE на основе создания собственных таблиц;
Теоретическая часть
Изучите теоретический материал, загрузив из папки «Учебная» файл «Структура таблиц в Database Desktop.pps».
Практическая часть
Задание 2.1. Разработка приложения БД «Колледж»
Ход работы
Создайте в своей папке с названием «РиЭУБД» папку «ЛР_2», а в ней папку «2.1».
С помощью утилиты BDE Administrator создайте псевдоним с именем College (воспользуйтесь навыками, полученными при выполнении Лабораторной работы №1). Ниже кратко описаны действия, необходимые для создания нового псевдонима.
Для создания нового псевдонима выберите из меню Object команду New.
В открывшемся диалоговом окне New Database Alias (Новый псевдоним базы данных) из списка Database Driver Name (Имя драйвера базы данных) выберите драйвер для создаваемой базы данных STANDARD.
Задайте имя псевдонима College.
В правой части окна в пункте PATH укажите путь к файлам базы данных, для которой создается псевдоним (в нашем случае это папка …\2.1).
Выберите в меню Object команду Apply (Применить).
В
открывшемся диалоговом окне Confirm
нажмите на кнопку OK.Запустите утилиту Database Desktop.
Для создания новой таблицы базы данных выберите из меню File команду New → Table.
В открывшемся диалоговом окне Create Table выберите тип создаваемой таблицы. Оставляем тип по умолчанию – Paradox 7.
В окне Create Paradox 7 Table определяем структуру записей таблицы: задаем имя, тип и размер полей в соответствии с Рисунком 2.1.
Обратите внимание, что поле Familia помечено как ключевое. Для того, чтобы назначить какое-либо поле ключевым выполните двойной щелчок в столбце Key, либо, установив курсор в столбец Key, нажмите пробел.
Для возможности внесения в базу данных русскоязычных данных, необходимо задать языковой драйвер таблицы базы данных – в правом углу выберите из выпадающего списка строку с названием Table language и нажмите на кнопку Modify. Русскому языку соответствует драйвер Pdox ANSI Cyrillic.
Сохраните созданную структуру таблицы в папке …\2.1 под названием College.db.
Закройте утилиту Database Desktop и запустите программу Delphi 7.
Разместите на форме компоненты:
Table (вкладка BDE):
DataSource (вкладка Data Access):
DBGrid (вкладка Data Controls):
DBNavigator (вкладка Data Controls)
Установите свойства компонента согласно Таблице 2.1.
Таблица 2.1 Свойства компонентов приложения Колледж
-
Компонент
Свойство
Значение
Form1
Caption
Колледж
Color
По своему желанию
Autosize
True
Table1
DatabaseName
College
TableName
College.db
Active
True
DataSource1
DataSet
Table1
DBGrid1
DataSource
DataSource1
DBNavigator1
DataSource
DataSource1
П
осле
установки указанных свойств внешний
вид проектируемой формы приведен на
Рис.2.2.
Запустите приложение на выполнение (F9).
Заполните созданную таблицу, добавив не менее 15-20 записей. В дальнейшем Вам пригодятся эти созданные базы для выполнения других лабораторных работ.
Сохраните приложение в папке «ЛР_2 \ 2.1».
Выйдите из среды Delphi 7.
Проверьте работоспособность созданного приложения, запустив на выполнение exe-файл.
Задание 2.2. Разработка приложения БД «Адресная книга»
Ход работы
Создайте в своей папке с названием «РиЭУБД» папку «ЛР_2», а в ней папку «2.2».
С помощью утилиты BDE Administrator создайте псевдоним с именем Addressbook (воспользуйтесь навыками, полученными при выполнении Лабораторной работы №1 и задания 2.1 Лабораторной работы 2).
Запустите утилиту Database Desktop.
Для создания новой таблицы базы данных выберите из меню File команду New → Table.
В открывшемся диалоговом окне Create Table выберите тип создаваемой таблицы. Оставляем тип по умолчанию – Paradox 7.
В окне Create Paradox 7 Table определяем структуру записей таблицы: задаем имя, тип и размер полей в соответствии с Рисунком 2.3.
З
адайте
языковой драйвер русского языка Pdox
ANSI Cyrillic,
выбрав в правом углу из выпадающего
списка строку с названием Table
language и нажав на
кнопку Modify.
Сохраните созданную структуру таблицы в папке …\2.2 под названием Addressbook.db.
Закройте утилиту Database Desktop и запустите программу Delphi 7.
Разместите на форме компоненты:
Table (вкладка BDE):
DataSource (вкладка Data Access):
DBGrid (вкладка Data Controls):
DBNavigator (вкладка Data Controls)
Установите свойства компонента согласно Таблице 2.2.
Таблица 2.2 Свойства компонентов приложения Адресная книга
-
Компонент
Свойство
Значение
Form1
Caption
Адресная книга
Color
По своему желанию
Autosize
True
Table1
DatabaseName
Addressbook
TableName
Addressbook.db
Active
True
DataSource1
DataSet
Table1
DBGrid1
DataSource
DataSource1
DBNavigator1
DataSource
DataSource1
П
осле
установки указанных свойств внешний
вид проектируемой формы приведен на
Рис.2.4.
Запустите приложение на выполнение (F9).
Заполните созданную таблицу, добавив не менее 15-20 записей.
Сохраните приложение в папке «ЛР_2 \ 2.2».
Выйдите из среды Delphi 7.
Проверьте работоспособность созданного приложения, запустив на выполнение exe-файл.
Задание 2.3. Разработка приложения БД «Фонотека»
Ход работы
Создайте в своей папке с названием «РиЭУБД» в папке «ЛР_2» папку «2.3».
С помощью утилиты BDE Administrator создайте псевдоним с именем Fonoteca (воспользуйтесь навыками, полученными при выполнении Лабораторной работы №1, и заданий 2.1 и 2.2 Лабораторной работы 2).
Запустите утилиту Database Desktop.
Для создания новой таблицы базы данных выберите из меню File команду New → Table.
В
открывшемся диалоговом окне Create
Table выберите тип
создаваемой таблицы. Оставляем тип по
умолчанию – Paradox 7.В окне Create Paradox 7 Table определяем структуру записей таблицы: задаем имя, тип и размер полей в соответствии с Рисунком 2.5.
Задайте языковой драйвер русского языка Pdox ANSI Cyrillic, выбрав в правом углу из выпадающего списка строку с названием Table language и нажав на кнопку Modify.
Сохраните созданную структуру таблицы в папке …\2.3 под названием Fonoteca.db.
Д
ля
заполнения таблицы выполните в меню
File команду Open
→ Table, выберите
созданную таблицу и заполните ее
несколькими записями, подобно Рис.2.6.
Закройте утилиту Database Desktop и запустите программу Delphi 7.
Разместите на форме компоненты:
Label (вкладка Standard) – 4 экземпляра;
Image (вкладка Additional);
Table (вкладка BDE);
DataSource (вкладка Data Access):
DBEdit (вкладка Data Controls) – 4 экземпляра;
DBNavigator (вкладка Data Controls);
XP Manifest (вкладка Win32).
Установите свойства компонента согласно Таблице 2.3.
Таблица 2.3 Свойства компонентов приложения Фонотека
-
Компонент
Свойство
Значение
Form1
Caption
Фонотека
Color
По своему желанию
Autosize
True
BorderIcons
biSystemMenu
False
DataSource1
DataSet
Table1
Table1
DatabaseName
Fonoteca
TableName
Fonoteca.db
Active
True
DBEdit1
DataSource
DataSource1
DataField
Albom_name
DBEdit2
DataSource
DataSource1
DataField
Familia_imja
DBEdit3
DataSource
DataSource1
DataField
Year
DBEdit4
DataSource
DataSource1
DataField
Photo
DBNavigator1
DataSource
DataSource1
Label1
Caption
Название альбома
Font
По своему усмотрению
Label2
Caption
Фамилия/имя исполнителя
Font
По своему усмотрению
Label3
Caption
Год выпуска альбома
Font
По своему усмотрению
Label4
Caption
Фото
Font
По своему усмотрению
BitBtn1
Kind
bkClose
После установки указанных свойств примерный внешний вид проектируемой формы приведен на Рис.2.7.
Создаваемое приложение должно обеспечивать просмотр, редактирование, добавление новых и удаление ненужных записей. Кроме этого, в поле Image1 должна отображаться фотография того исполнителя, информация о котором выведена в форме. Предполагается, что изображения (фотографии) находятся в файлах в папке Image каталога с таблицей базы данных. Во время добавления в базу данных пользователь вводит в поле Photo имя файла фотографии, а во время просмотра фотография автоматически появляется в поле Image1.
Для реализации вышеперечисленных функций выполните следующие действия:
В заголовке формы в разделе объявления глобальных переменных var объявите переменную типа string – путь к файлам иллюстраций:
var
Form1: TForm1;
Bmp: string; //путь к файлам иллюстраций, которые размещены в подкаталоге
//Image каталога программы
Для вывода фотографии в поле Image1 создадим процедуру Show (после объявления раздела implementation) (необходимые комментарии приведены после знака //):
//вывод фотографии в поле Image1
procedure Photo (foto: string);
begin
try
Form1.Image1.Picture.LoadFromFile(Bmp+foto);
Form1.Image1.Visible:=true;
except
on EFOpenError do
begin
MessageDlg(‘Файл иллюстрации ’ + foto + ‘ не найден.’,
mtInformation, [mbOk], 0);
end;
end;
end;
Запишите процедуру перехода к другой записи, выбрав в Инспекторе объектов на вкладке Events (события) для компонента Table1 событие AfterScroll:
//переход к другой записи (следующей, предыдущей, первой, последней)
procedure TForm1.Table1AfterScroll(DataSet: TDataSet);
begin
if Form1.DBEdit4.Visible then
begin
form1.DBEdit4.Visible:=false;
form1.Label4.Visible:=false;
end;
if Form1.DBEdit4.Text<>''
then Photo(Form1.DBEdit4.Text)
else Form1.Image1.Visible:=false;
end;
Для обработчика события, когда пользователь вводит название в поле Фото, напишите следующий код:
//нажатие клавиши в поле Фото
procedure TForm1.DBEdit4KeyPress(Sender: TObject; var Key: Char);
begin
if (Key=#13) then
if Form1.DBEdit4.Text<>''
then Photo(Form1.DBEdit4.Text) //показать иллюстрацию
else Form1.Image1.Visible:=false;
end;
Также необходимо создать обработчик события, когда пользователь щелкает по кнопкам Навигатора для вставки записей или редактирования:
//щелчок на кнопке Навигатор
procedure TForm1.DBNavigator1Click(Sender: TObject; Button: TNavigateBtn);
begin
case Button of
nbInsert: begin
Image1.Visible:=false; //скрыть область вывода иллюстрации
DBEdit4.Visible:=true; //показать поле Фото
label4.Visible:=true; //показать метку Фото
end;
nbEdit: begin
dbedit4.Visible:=true; //показать поле Фото
label4.Visible:=true; //показать метку Фото
end;
end;
end;
Запишите обработчик события, происходящего перед открытием таблицы (считывание имени графического файла для запуска приложения):
//перед открытием таблицы
procedure TForm1.Table1BeforeOpen(DataSet: TDataSet);
begin
bmp:=ExtractFilePath(ParamStr(0))+'Image\';
end;
Сохраните приложение в папке «ЛР_2 \ 2.3».
Выйдите из среды Delphi 7.
Проверьте работоспособность созданного приложения, запустив exe-файл на выполнение. На Рис.2.8 приведен примерный вид работающего приложения.
Попробуйте удалить или добавить записи в таблицу с помощью Навигатора.
