- •Базы данных
- •Содержание
- •Введение
- •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 порядок выполнения лабораторных работ
- •Библиографический список
Вариант 7. Строительная компания
объекты (А) |
|
снабжение (B) |
|
материалы (С) |
К од объекта |
|
Код объекта |
|
Код материала |
Название |
Код материала |
Наименование |
||
Адрес |
Количество |
Производитель |
||
|
Дата |
Цена |
||
|
|
|
||
назначения (D) |
|
работники (E) |
|
|
Код объекта |
|
Код работника |
|
|
Код работника |
|
ФИО |
|
|
Дата |
|
Профессия |
|
|
Выполнить SQL-запросы для созданной БД:
Получить информацию об обеспечении объектов строительными материалами (вывод данных из нескольких таблиц).
Определить, на каких объектах проводились строительные работы в январе 2004 г. (простой вложенный).
Вывести информацию о работниках, назначенных на объект «Метромост» 10 апреля 2004 г. (коррелированный подзапрос).
Определить, на каких объектах и в каком количестве был использован цемент в первом квартале 2005 г. (со сложным условием).
Вывести информацию об объектах строительства, на которых в указанную дату работали сварщики (с EXISTS).
Вывести названия объектов, на которых в текущем месяце работали штукатуры, либо названия объектов, на которых в текущем месяце использовался цемент, либо и то, и другое (с UNION).
Изменить дату назначения на объект работника с фамилией «Петров» (UPDATE).
Определить стоимость израсходованного песка на объекте «Набережная» за один день (с использованием встроенных функций).
Вариант 8. Автосалон
фирмы (А) |
|
наличие автомобилей (В) |
|
автомобили (С) |
Код фирмы |
|
Код фирмы |
|
Идентификационный номер машины |
Название фирмы |
Идентификационный номер машины |
Цвет |
||
Адрес |
Модель |
Цена |
||
Город |
Тип кузова |
Салон |
||
Телефон |
Тип двигателя |
Год выпуска |
||
|
Коробка передач (КПП) |
|
Выполнить SQL-запросы для созданной БД:
Получить информацию о названии фирмы, модели машины и её характеристиках (вывод данных из нескольких таблиц).
Получить информацию о фирмах, продающих машины ценой до 110000 и салоном «Люкс» (простой вложенный).
Вывести список машин, записанных на фирму «Сибирь-Лада» (коррелированный подзапрос).
Выбрать модель и цену машин, на которых установлен двигатель ЗМЗ-406 (со сложным условием).
Получить информацию о телефонах фирм, в которых продаются машины «ГАЗ-3110» (с EXISTS).
Вывести идентификационный номер машин либо 2000 г. выпуска, либо с двигателем объемом больше 1,6 л., либо то и другое (с UNION).
Увеличить цену универсалов в 0,02 раза (UPDATE).
Вывести минимальную цену для машин с типом кузова «седан» (с использованием встроенных функций).