- •Базы данных
- •Содержание
- •Введение
- •1. Создание приложений с использованием технологии bde
- •1.1. Лабораторная работа № 1: создание базы данных
- •1.1.1. Создание таблиц dBase IV
- •1.1.2. Создание индексов
- •1.1.3. Создание таблиц Paradox 7
- •1.1.4. Задание свойств таблицы Paradox 7
- •Задание на лабораторную работу № 1
- •1.2. Лабораторная работа № 2: установление связей между таблицами в многотабличной базе данных
- •1.2.1. Создание алиаса
- •1.2.2. Связывание таблиц
- •Задание на лабораторную работу № 2
- •1.3. Лабораторная работа № 3: работа с полями и компонентом dbGrid
- •1.3.1. Использование объектов-полей
- •1.3.2. Обращение к значению поля
- •1.3.3. События объекта-поля
- •1 Рис. 10. Пример использования события OnCellClick .3.4. События сетки dbGrid
- •1.3.5. Создание объектов-столбцов в dbGrid
- •1.3.6. Формирование списка возможных значений столбца
- •Задание на лабораторную работу № 3:
- •1.4. Лабораторная работа № 4: работа с наборами данных (компонент Table)
- •1.4.1. Открытие и закрытие набора данных
- •1.4.2. Доступ к записям
- •1.4.3. Навигация по набору данных
- •1.4.4. Поиск записей в наборах данных
- •1.4.5. Реализация каскадных изменений
- •1.4.6. Пример выполнения лабораторной работы
- •Задание на лабораторную работу № 4
- •1.5. Лабораторная работа № 5: работа с отчетами
- •1.5.1. Создание простейшего отчета
- •1.5.2. Создание отчета для связанных наборов данных
- •1.5.3. Использование выражений (компонент qrExpr)
- •1.5.4. Группирование данных в отчете
- •Задание на лабораторную работу № 5:
- •1.6. Лабораторная работа № 6: sql-запросы (компонент Query)
- •Задание на лабораторную работу № 6
- •2. Создание приложений, работающих с базами данных interbase
- •2.1. Лабораторная работа № 1: создание схемы базы данных
- •2.2. Лабораторная работа № 2: доступ к базе данных InterBase c использованием dbExpress
- •2.3. Лабораторная работа № 3: транзакции
- •2.4. Лабораторная работа № 4: отображение данных запроса
- •2.5. Лабораторная работа № 5: вычисляемые, агрегатные и подстановочные поля
- •2.5.1. Вычисляемые поля
- •2.5.2. Агрегатные поля
- •2.5.3. Подстановочные поля
- •2.6. Лабораторная работа № 6: связь Master-Detail
- •2.7. Лабораторная работа № 7: локальная репликация данных
- •Приложение 1 варианты заданий к лабораторным работам Вариант 1. Прием заказов
- •Вариант 2. Поставки товаров
- •Вариант 3. Исполнители
- •Вариант 4. Картинная галерея
- •Вариант 5. Порт
- •Вариант 6. Студенты
- •Вариант 7. Строительная компания
- •Вариант 8. Автосалон
- •Вариант 9. Аэропорт
- •Вариант 10. Диагностический центр
- •Вариант 11. Реклама
- •Вариант 12. Быстрая пицца
- •Вариант 13. Клуб собаководов
- •Вариант 14. Грузоперевозки
- •Вариант 15. Аптека
- •Вариант 16. Автовокзал
- •Вариант 17. Общественная организация
- •Вариант 18. Учет потребления газа
- •Приложение 2 порядок выполнения лабораторных работ
- •Библиографический список
Вариант 13. Клуб собаководов
хозяева (А) |
|
собаки (B) |
|
соревнования (D) |
Код хозяина |
|
Код собаки |
|
Код собаки |
ФИО |
Код хозяина |
Дата соревнования |
||
Адрес |
Код клуба |
Кол-во набранных баллов |
||
|
Кличка |
|
||
|
Вес |
клубы (С) |
||
|
Пол |
Код клуба |
||
|
|
Порода |
|
Название |
Выполнить SQL-запросы для созданной БД:
Вывести ФИО хозяина и клички собак, принадлежащих ему (вывод данных из нескольких таблиц).
Определить кличку собаки с максимальным весом, указанной породы и пола (простой вложенный).
Вывести клички собак, хозяева которых состоят в заданном клубе (коррелированный подзапрос).
Вывести ФИО хозяина, название клуба, кличку собаки, которая набрала максимальное количество баллов на соревнованиях 28.12.2002 г. (со сложным условием).
Для указанного клуба вывести клички собак, которые участвовали в соревнованиях (с EXISTS).
Выбрать клички собак, вес которых больше среднего, или клички собак указанного клуба (с UNION).
Изменить название клуба (UPDATE).
Определить количество собак в указанном клубе (с использованием встроенных функций).
Вариант 14. Грузоперевозки
клиенты (А) |
|
перевозки (C) |
|
грузы (D) |
И мя клиента |
|
№ груза |
|
№ груза |
Годовой доход |
Имя клиента |
Наименование |
||
|
№ грузовика |
Вес |
||
грузовики (B) |
Название города |
города (E) |
||
№ грузовика |
Дата доставки |
Название города |
||
Имя водителя |
|
|
|
Население |
Выполнить SQL-запросы для созданной БД:
Получить информацию о том, кому, в какой город и какой груз доставляется (вывод данных из нескольких таблиц).
Выдать имена водителей, доставляющих груз в Вену (простой вложенный).
Выдать имя водителя, доставляющего груз с номером 10 (коррелированный подзапрос).
Получить информацию о том, кто доставляет груз, каким весом, кому и в какой город, при условии, что груз весит больше 1000 кг и дата доставки — текущий день (со сложным условием, с BETWEEN).
Выдать города и численность населения городов, в которых клиенты, имеющие заказы, имеют доход более 5000 (с EXISTS).
Вывести список клиентов с датой доставки груза 14.01.05, или проживающих в городах с населением менее 1000000, или то и другое (с UNION).
Изменить имя водителя «Иванов» на «Смирнов» (UPDATE).
Вычислить общий вес груза, который доставляет грузовик с указанным номером и указанной датой доставки (с использованием встроенных функций или вычисляемых полей).