- •Базы данных
- •Содержание
- •Введение
- •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 порядок выполнения лабораторных работ
- •Библиографический список
Вариант 5. Порт
корабли (А) |
|
фрахтовки (B) |
|
маршруты (C) |
|
Код корабля |
|
Код маршрута |
|
Код маршрута |
|
Регистрационный номер |
Код корабля |
Место убытия |
|||
Грузоподъемность |
Код груза |
Место назначения |
|||
Название |
Дата загрузки |
Таможенная декларация |
|||
Дата выпуска |
|
Дата убытия |
|||
|
|
Дата прибытия |
|||
|
|
|
|
|
|
|
|
|
|
грузы (D) |
|
|
Код груза |
||||
|
Наименование груза |
||||
|
Ценность |
||||
|
Вес груза |
||||
|
Регистрационный номер |
||||
|
Скоропорченность |
Выполнить SQL-запросы для созданной БД:
Вывести наименование грузов, регистрационный номер, ценность и вес, ввозимые «Стремительным» в г. Мурманск (вывод данных из нескольких таблиц).
Вывести последний груз корабля «Мирный», который он вез из Владивостока в Токио (простой вложенный).
Вывести название, грузоподъемность, регистрационный номер кораблей, возивших груз с названием «фасоль». Отсортировать по названию (коррелированный подзапрос).
Для корабля «Смелый» вывести наименование и вес груза, который он вез из Владивостока в Токио (со сложным условием).
Вывести реквизиты кораблей, стоящих в доке (нет даты убытия) (с EXISTS).
Вывести реквизиты кораблей, имеющих грузоподъемность более 100 тыс. т. и реквизиты кораблей, плавающих по маршруту С.-Петербург-Лиссабон (с UNION).
Исправить вес груза с названием «пельмени», включенного в партию № 10001 (UPDATE).
Вывести среднее время в пути кораблей, находящихся в пути последний месяц (с использованием встроенных функций или вычисляемых полей).
Вариант 6. Студенты
кафедры (A) |
|
занятия (C) |
|
баллы (D) |
|
студенты (E) |
К од кафедры |
|
Код занятий |
|
Код занятий |
|
Код студента |
Название кафедры |
Код кафедры |
Код студента |
ФИО |
|||
Зав. кафедрой |
Код преподавателя |
Балл |
Адрес |
|||
|
Наимен. занятия |
|
Специальность |
|||
преподаватели (B) |
Семестр |
|
Год поступления |
|||
Код преподавателя |
Год |
|
Номер группы |
|||
ФИО |
|
|
Выполнить SQL-запросы для созданной БД:
Вывести наименования занятий, названия кафедр и ФИО преподавателей, проводящих эти занятия (вывод данных из нескольких таблиц).
Вывести наименования занятий (дисциплин), проводимых кафедрой ИВТ (простой вложенный).
Определить средний балл успеваемости студентов по высшей математике (коррелированный подзапрос).
Вывести информацию об успеваемости студентов группы В-131 за I семестр 2001г., упорядочив по столбцу фамилии студентов (со сложным условием).
Вывести наименования занятий, которые проводит преподаватель «Смирнов» с кафедры математики (с EXISTS).
Вывести ФИО и группу студентов, проживающих в общежитии или ФИО и группу студентов, имеющих суммарный балл больше 18, или то и другое (с UNION).
Исправить балл студента «Снегирева» из группы И-210 по физике на «хорошо» (UPDATE).
Для всех студентов, получивших за экзамены средний балл больше 4.5, получить ФИО и группу (с использованием встроенных функций).