лабораторный практикум по базам данных

advertisement
Федеральное агентство по образованию
Федеральное государственное образовательное учреждение
высшего профессионального образования
«Сибирский федеральный университет»
БАЗЫ ДАННЫХ
ЛАБОРАТОРНЫЙ ПРАКТИКУМ
Д. И. Морозов
М.П. Головин
Красноярск
2007
Лабораторная работа №1 (2 часа)
«Технология подключения и отображения базы данных»
Новый материал
Технология подключения и использования БД в Delphi.
Компоненты: DataSource, Table, DBGrid, DBImage, DBMemo, DBNavigator.
Задание:
1. Создать интерфейс для отображения данных таблицы animals в виде сетки
строк, изображения, многострочного текста, навигации по записям БД.
2. С помощью BDE Administrator, создать новый псевдоним с
использованием своего имени, подключить приложение БД используя новый
псевдоним.
Используемая база данных
DBDEMOS
Лабораторная работа №2 (2 часа)
«Настройка интерфейса к базам данных»
Новый материал
Средства настройки набора данных и отображающей их таблицы строк.
Инструменты: ColumnsEditor, FieldsEditor.
События: onCalcFields.
Задание:
1. Подключить таблицу country, создать интерфейс для отображения ее
данных с использованием сетки строк.
2. Настроить внешний вид сетки строк с помощью ColumnsEditor (для
столбцов: название, стиль, выравнивание, шрифт) и FieldsEditor (для полей
данных: формат их отображения, способ выравнивания, минимальное и
максимальное значения).
3. Создать новое (вычисляемое) поле для нахождения плотности населения с
использованием полей площадь и количество населения.
4. Создать обработчик события onCalcFields и написать код его реализации.
5. Настроить формат отображения вновь созданного поля.
5. Создать PickList из списка континентов для поля континент.
Используемая база данных
DBDEMOS
Лабораторная работа №3 (2 часа)
«Исследование свойств компонента Session»
Новый материал
Компонент Session, его свойства и методы.
Динамическое исследование БД, таблиц, псевдонимов.
Задание:
1. Положить на форму Table, DataSource, 3 ListBox, DBGrid.
2.Создать обработчики событий, реализующие заполнение первого списка
псевдонимами, второго – списками БД, третьего – списками ТБД.
3. Реализовать динамическое подключение выбранной ТБД к сетке строк.
Используемые базы данных
Все локальные БД, инсталлированные на компьютере.
Лабораторная работа №4 (2 часа)
«Использование навигационных способов доступа к базам данных»
Новый материал
Компонент TField, его свойства и методы.
Методы Table: FindKey, FindNearest, SetKey, GotoKey, GotoNearest, Locate,
GetBookMark, GotoBookMark.
Задание:
1. Подключить таблицу country (employee), создать интерфейс для
отображения ключей поиска, кнопок управления средствами поиска, сетки
строк для отображения результатов поиска.
2. Реализовать навигационный поиск всеми указанными выше методами.
Используемая база данных
DBDEMOS
Лабораторная работа №5 (2 часа)
«Использование реляционных способов доступа к базам данных»
Новый материал
Базовые операторы языка SQL.
Инструменты: SQL Monitor, SQL Explorer.
Компонент Query и его свойства: DataBaseName, SQL, Params.
Задание:
1. Подключить таблицу country (employee) с помощью Query, создать
интерфейс для отображения ее данных с использованием сетки строк, строку
для ввода ключа поиска, кнопки для реализации параметрического и
динамического запроса к БД.
2. Реализовать с помощью SQL статический запрос на языке SQL.
3. Реализовать с помощью SQL Monitor статический запрос на языке SQL.
4. Реализовать параметрический запрос на языке SQL.
5. Реализовать динамический запрос на языке SQL.
Используемая база данных
DBDEMOS
Варианты заданий
Вариант 1
Отобрать все записи из таблицы country, со странами, названия
которых начинаются на P и расположенными в Южной Америке.
Отобрать все записи из таблицы country, площадь которых находится в
диапазоне от 0 до 100000.
Вариант 2
Отобрать все записи из таблицы emplyee, с работниками, имена
которых начинаются на P, а фамилии на F.
Отобрать все записи из таблицы emplyee, с работниками, номер
которых находится в диапазоне от 0 до 20.
Вариант 3
Отобрать все записи из таблицы country, со странами, названия столиц
которых начинаются на B, расположенными в Южной Америке.
Отобрать все записи из таблицы country, площадь которых находится в
диапазоне от 100000 до 200000.
Вариант 4
Отобрать все записи из таблицы emplyee, с работниками, имена
которых начинаются на A, а заработная плата более 30000.
Отобрать все записи из таблицы emplyee, с работниками, номер
которых находится в диапазоне от 20 до 40.
Вариант 5
Отобрать все записи из таблицы country, со странами, площадь которых
меньше миллиона, расположенными в Южной Америке.
Отобрать все записи из таблицы country, площадь которых находится в
диапазоне от 200000 до 500000.
Вариант 6
Отобрать все записи из таблицы emplyee, с работниками, фамилии
которых начинаются на G, а заработная плата меньше 30000.
Отобрать все записи из таблицы emplyee, с работниками, номер
которых находится в диапазоне от 40 до 60.
Вариант 7
Отобрать все записи из таблицы country, со странами, население
которых превышает 10 миллионов, расположенными в Южной Америке.
Отобрать все записи из таблицы country, площадь которых находится в
диапазоне от 30000 до 50000.
Вариант 8
Отобрать все записи из таблицы emplyee, с работниками, фамилии
которых начинаются на B, а имена на J.
Отобрать все записи из таблицы emplyee, с работниками, номер
которых находится в диапазоне от 60 до 80.
Вариант 9
Отобрать все записи из таблицы country, со странами, названия
которых начинаются на С, а площадь больше миллиона.
Отобрать все записи из таблицы country, площадь которых находится в
дапазоне от 1000000 до 2000000.
Вариант 10
Отобрать все записи из таблицы emplyee, с работниками, имена
которых начинаются на В, а зарплата меньше 35000.
Отобрать все записи из таблицы emplyee, с работниками, номер
которых находится в диапазоне от 80 до 100.
Вариант 11
Отобрать все записи из таблицы country, со странами, названия
которых заканчиваются на A, а названия столиц начинаются на В.
Отобрать все записи из таблицы country, площадь которых находится в
диапазоне от 2000000 до 10000000.
Вариант 12
Отобрать все записи из таблицы emplyee, с работниками, имена
которых начинаются на Т, а номер меньше 100.
Отобрать все записи из таблицы emplyee, с работниками, номер
которых находится в диапазоне от 100 до 140.
Вариант 13
Отобрать все записи из таблицы country, со странами, названия столиц
которых начинаются на B, а заканчиваются на A.
Отобрать все записи из таблицы country, со странами население
которых находится в диапазоне от 0 до 1000000.
Вариант 14
Отобрать все записи из таблицы emplyee, с работниками, имена
которых начинаются на K, а фамилии на N.
Отобрать все записи из таблицы emplyee, с работниками, зарплата
которых находится в диапазоне от 10000 до 20000.
Вариант 15
Отобрать все записи из таблицы country, со странами, названия
которых заканчиваются на A, население более 20 миллионов и
расположенными в Северной Америке.
Отобрать все записи из таблицы country, со странами население
которых находится в диапазоне от 1000000 до 12000000.
Вариант 16
Отобрать все записи из таблицы emplyee, с работниками, фамилии
которых начинаются на L, а зарплата не равна 25000.
Отобрать все записи из таблицы emplyee, с работниками, зарплата
которых находится в диапазоне от 20000 до 30000.
Вариант 17
Отобрать все записи из таблицы country, со странами, названия
которых начинаются на С и расположенными в Северной Америке.
Отобрать все записи из таблицы country, со странами население
которых находится в диапазоне от 12000000 до 20000000.
Вариант 18
Отобрать все записи из таблицы emplyee, с работниками, имена
которых начинаются на B или А, а зарплата больше 30000.
Отобрать все записи из таблицы emplyee, с работниками, зарплата
которых находится в диапазоне от 30000 до 40000.
Вариант 19
Отобрать все записи из таблицы country, со странами, названия
которых начинаются на С и площадью более миллиона.
Отобрать все записи из таблицы country, со странами население
которых находится в диапазоне от 20000000 до 100000000.
Вариант 20
Отобрать все записи из таблицы employee, с работниками, у которых
имя Roger или фамилия Young.
Отобрать все записи из таблицы emplyee, с работниками, зарплата
которых находится в диапазоне от 40000 до 50000.
Данные ввода-вывода
Входные данные – запрос SQL, вводимый пользователем в многостраничный
редактор текста
Выходных данных нет
Компоненты, используемые в задаче
RichEdit – многостраничный редактор текста
Query – компонент для работы с SQL-запросами
Обязательная настройка свойств компонентов
RichEdit,DBGrid: Align.
Требования к интерфейсу
При запуске программы фокус ввода передается многострочному редактору
текста.
Кнопка «Применить» должна быть выставлена кнопкой по умолчанию.
Окно программы на этапе выполнения приведено на рисунке 1
Рис.1 – Пример окна лабораторной работы №5
Список ошибок и некорректностей ввода
При попытке выполнить неверно заданный SQL-запрос программа зависает.
Обработчики ошибок и некорректностей ввода-вывода
При некорректно введенном SQL-запросе, программа должна выдать
сообщение об ошибке и прекратить обработку запроса, это осуществляется в
обработчике, реализующем задание.
Обработчики, реализующие задание
Нажатие кнопки «Применить»:
Реализация задания – выполнение введенного пользователем SQL-запроса
Лабораторная работа №6 (2 часа)
«Средства создания и редактирования таблиц»
Новый материал
Типы данных таблиц Paradox, первичный и вторичные ключи.
Инструменты: Database Desktop.
Задание:
1. Создать ТБД Paradox с данными по указанию преподавателя c
использованием первичного ключа, Validity Checks, Secondary Indexes,
одного внешнего ключа и заполнить 5-7 кортежей ТБД.
2. Подключить созданную ТБД, создать интерфейс для отображения ее
данных с использованием сетки строк.
3. Настроить внешний вид сетки строк с помощью ColumnsEditor (для
столбцов: название, стиль, выравнивание, шрифт) и FieldsEditor (для полей
данных: формат их отображения, способ выравнивания, минимальное и
максимальное значения).
Используемая база данных
DBDEMOS
Лабораторная работа №7 (2 часа)
«Средства обеспечения ссылочной целостности»
Новый материал
Средства поддержания ссылочной целостности, справочных таблиц,
реализация бизнес-правил.
Задание:
1. Создать дочернюю ТБД Paradox с данными по указанию преподавателя,
использовав Table Lockup, Referential Integrity, связав родительскую и
дочернюю ТБД.
2. Подключить созданную ТБД, создать интерфейс для отображения ее
данных с использованием сетки строк.
3. Реализовать использование справочной таблицы с помощью FieldsEditor.
Используемая база данных
DBDEMOS
Лабораторная работа №8 (2 часа)
«Средства фильтрации данных»
Новый материал
Методы компонента TField: Filter, Filtered, FilterOptions.
События: onFiltered, onFilterRecord.
Задание:
1. Создать PageControl с двумя страницами, подключить таблицу country
(employee), на первой странице создать интерфейс для отображения ее
данных с использованием сетки строк, значений для фильтрации набора
данных, кнопок для управления процессом фильтрации.
2. Реализовать механизм фильтрации по выражению по заданию
преподавателя.
3. Реализовать механизм
преподавателя.
Используемая база данных
DBDEMOS
фильтрации
по
диапазону
по
заданию
Варианты заданий
Вариант 1
Отобрать все записи из таблицы country, со странами, названия
которых начинаются на P и расположенными в Южной Америке.
Вариант 2
Отобрать все записи из таблицы emplyee, с работниками, имена
которых начинаются на P, а фамилии на F.
Вариант 3
Отобрать все записи из таблицы country, со странами, названия столиц
которых начинаются на B, расположенными в Южной Америке.
Вариант 4
Отобрать все записи из таблицы emplyee, с работниками, имена
которых начинаются на A, а заработная плата более 30000.
Вариант 5
Отобрать все записи из таблицы country, со странами, площадь которых
меньше миллиона, расположенными в Южной Америке.
Вариант 6
Отобрать все записи из таблицы emplyee, с работниками, фамилии
которых начинаются на G, а заработная плата меньше 30000.
Вариант 7
Отобрать все записи из таблицы country, со странами, население
которых превышает 10 миллионов, расположенными в Южной Америке.
Вариант 8
Отобрать все записи из таблицы emplyee, с работниками, фамилии
которых начинаются на B, а имена на J.
Вариант 9
Отобрать все записи из таблицы country, со странами, названия
которых начинаются на С, а площадь больше миллиона.
Вариант 10
Отобрать все записи из таблицы emplyee, с работниками, имена
которых начинаются на В, а зарплата меньше 35000.
Вариант 11
Отобрать все записи из таблицы country, со странами, названия
которых заканчиваются на A, а названия столиц начинаются на В.
Вариант 12
Отобрать все записи из таблицы emplyee, с работниками, имена
которых начинаются на Т, а номер меньше 100.
Вариант 13
Отобрать все записи из таблицы country, со странами, названия столиц
которых начинаются на B, а заканчиваются на A.
Вариант 14
Отобрать все записи из таблицы emplyee, с работниками, имена
которых начинаются на K, а фамилии на N.
Вариант 15
Отобрать все записи из таблицы country, со странами, названия
которых заканчиваются на A, население более 20 миллионов и
расположенными в Северной Америке.
Вариант 16
Отобрать все записи из таблицы emplyee, с работниками, фамилии
которых начинаются на L, а зарплата не равна 25000.
Вариант 17
Отобрать все записи из таблицы country, со странами, названия
которых начинаются на С и расположенными в Северной Америке.
Вариант 18
Отобрать все записи из таблицы emplyee, с работниками, имена
которых начинаются на B или А, а зарплата больше 30000.
Вариант 19
Отобрать все записи из таблицы country, со странами, названия
которых начинаются на С и площадью более миллиона.
Вариант 20
Отобрать все записи из таблицы emplyee, с работниками, у которых
имя Roger или фамилия Young.
Данные ввода-вывода
Входных и выходных данных нет
Компоненты, используемые в задачи
Edit – вводимый текст;
Panel – панель;
GroupBox – групповое окно;
PageControl – Многостраничная панель;
ComboBox – выпадающий список.
Обязательная настройка свойств компонентов
Panel, GroupBox, PageControl, DBGrid: Align.
Требования к интерфейсу
При запуске программы активна страница с исходным набором данных.
Окно программы на этапе выполнения приведено рисунке 2
Рис. 2 – Пример окна лабораторной работы №8
Список ошибок и некорректностей ввода
В случае если после наложения фильтра набор данных оказался пустым
пользователю должно быть выведено предупреждающее сообщение.
Фильтр задан пользователем некорректно.
Обработчики ошибок и некорректностей ввода
До наложения фильтра необходимо проверять корректность введенных
пользователем граничных значений.
Обработчики, реализующие задание
Нажатия кнопок применения фильтров:
Реализация задания – наложение фильтров на текущий набор данных в виде
диапазона и условий.
Лабораторная работа №9 (2 часа)
«Создание отчета по набору данных»
Новый материал
Компоненты: QuickRep, QRBand, QRLabel, QRDBText, QRExpr,
QRSysData,QRImage.
События: onPrinterSeup, onPreview, onPrint.
Задание:
1. В продолжение лабораторной работы №8, на второй странице разместить
компоненты просмотра отчета, подключить их к набору данных.
2. Настроить внешний вид отчета в соответствии с заданием преподавателя и
параметрами принтера.
3. Получить твердую копию отчета.
Используемая база данных
DBDEMOS
Данные ввода-вывода
Входные данные – сформированные наборы данных из лабораторной работы
№8
Выходные данные – созданный отчет
Компоненты, используемые в задаче
Любые компоненты панели QReport.
Обязательная настройка свойств компонентов
QuickRep: Options, Zoom, Bands;
QRLabel, QRMemo, QRRichText, QRShape, QRImage: AlignToBand;
QRSysData: Data, Text.
Требования к интерфейсу
Окно отчета должно выводиться в центр экрана.
В отчете обязательно должны присутствовать следующие элементы:
заголовок в начале отчета, номер страницы в правом нижнем углу.
Пример окна с отчетом приведен на рисунке 3.
Рис. 3 – Пример окна лабораторной работы №9
Список ошибок и некорректностей ввода
В этой лабораторной работе проверки ошибок ввода нет.
Обработчики ошибок и некорректностей ввода
В этой лабораторной работе обработчиков ошибок нет.
Обработчики, реализующие задание
Создание главного окна программы:
Реализация задания – вывод отчета на экран в виде отдельного окна, скрытие
главного окна программы.
Лабораторная работа №10 (2 часа)
«Особенности создания и использования интерфейса к БД InterBase»
Новый материал
Типы данных InterBase, операторы SQL редактирования полей ТБД.
Инструменты: IBConsole, IBSQLMonitor.
Компоненты: IBTable, IBQuery, IBDataSet.
Задание:
1. Подключить таблицу employee, создать интерфейс для отображения ее
данных с использованием сетки строк.
2. С помощью IBConsole создать псевдоним и доступ к БД, с помощью
IBSQLMonitor обеспечить редактирование ТБД по заданию преподавателя.
Используемая база данных
IBLocal
Лабораторная работа №11 (2 часа)
«Технология создания и редактирования ТБД Interbase»
Новый материал
Операторы SQL создания ТБД и ее структуры, реляционного поиска данных.
Триггеры, хранимые процедуры, процедуры пользователя.
Задание:
1. С помощью DataBaseDesktop создать таблицу InterBase по заданию
преподавателя.
2. Подключить созданную таблицу, создать интерфейс для отображения ее
данных с использованием сетки строк.
Используемая база данных
Собственная.
Лабораторная работа №12 (2 часа)
«Технология использования триггеров и хранимых процедур»
Новый материал
Триггеры, хранимые процедуры, процедуры пользователя.
Задание:
1. Создать триггеры и хранимые процедуры для работы с БД, созданной в
лабораторной работе №12.
2. Использовать триггеры и хранимые процедуры для управления созданной
ранее ТБД.
Используемая база данных
Собственная.
Download