Л. р. №2. Выборка данных. Один из запросов надо написать двумя способами и объяснить, какой из вариантов будет работать быстрее и почему.
Проверить, не лежат ли в одной палате мужчины и женщины (не учитывать выписанных пациентов). Посчитать количество язвенников, поступивших в текущем году. Создать упорядоченные списки:
· пациентов в каждой палате с указанием ФИО врача и диагноза;
· количества занятых коек в каждой палате;
· пациентов для всех хирургов с указанием диагнозов.
Л. р. №3. Работа с представлениями. Для созданных представлений необходимо проверить с помощью запросов UPDATE и INSERT, являются ли они обновляемыми, и объяснить полученный результат.
1. Представление "Специализация больницы": диагноз – количество пациентов-мужчин – количество пациентов-женщин.
2. Представление "Пациенты терапевтического отделения" (не учитывать выписанных пациентов).
3. Представление "Загруженность врачей по отделениям": отделение – врач – количество текущих пациентов.
Л. р. №4. Изучение операций реляционной алгебры. Необходимо написать на языке SQL запросы, которые реализуют операции реляционной алгебры. Если для демонстрации операций РА недостаточно отношений, созданных во время выполнения работы №1, то следует создать дополнительные отношения.
Л. р. №5. Оптимизация запросов и работа с индексами. Общее для всех вариантов задание приведено в конце данного документа.
Л. р. №6. Изучение механизма транзакций. С помощью различных операторов SQL (DDL, DML) определить ситуации автоматической фиксации транзакций. Запустить два окна SQL Plus и определить, какой уровень изоляции транзакций установлен. Проиллюстрировать работу с командами SAVEPOINT, COMMIT и ROLLBACK.
Вариант 7.
Л. р. №1. Создание и заполнение отношений БД собственников квартир.
1. Отношение "Адреса" (поля "Номер здания", "Название улицы", "Номер дома").
2. Отношение "Собственники" ("ФИО", "Дата рождения", "Пол").
3. Отношение "Документы" (поля "Владелец", "Тип документа", "Серия документа", "Номер документа", "Кем и когда выдан").
4. Отношение "Владение":
Содержимое поля | Тип | Длина | Дес. | Примечание |
Владелец | N | 6 | 0 | внешний ключ к таблице "Собственники" |
Номер здания | N | 6 | 0 | внешний ключ к таблице "Адреса" |
Номер квартиры | С | 20 | обязательное поле | |
Доля | С | 8 | часть квартиры, которой он владеет (например, 1, 1/3, 3/4 и т. д.) | |
Начало владения | D | обязательное поле | ||
Окончание владения | D |
Примечание: не для всех отношений указаны ключевые поля. Если они не указаны, их нужно добавить!
Л. р. №2. Выборка данных. Один из запросов надо написать двумя способами и объяснить, какой из вариантов будет работать быстрее и почему.
Создать упорядоченные списки:
· единоличных владельцев помещений (доля которых равна 1) с указанием адреса квартиры, которой он владеет;
· собственников с перечнем их документов (в том числе тех, у которых нет документов);
· квартир, у которых более 10 собственников;
· квартир, у которых в настоящее время нет собственников.
Л. р. №3. Работа с представлениями. Для созданных представлений необходимо проверить с помощью запросов UPDATE и INSERT, являются ли они обновляемыми, и объяснить полученный результат.
1. Представление "Собственность" (соединение отношений "Собственники" и "Владение") – без учета бывших собственников.
2. Представление "Количество собственников по домам": номер здания – улица – номер дома – количество текущих собственников.
3. Представление "Количество текущих собственников" по всем квартирам, включая квартиры, у которых нет собственников.
Л. р. №4. Изучение операций реляционной алгебры. Необходимо написать на языке SQL запросы, которые реализуют операции реляционной алгебры. Если для демонстрации операций РА недостаточно отношений, созданных во время выполнения работы №1, то следует создать дополнительные отношения.
Л. р. №5. Оптимизация запросов и работа с индексами. Общее для всех вариантов задание приведено в конце данного документа.
Л. р. №6. Изучение механизма транзакций. С помощью различных операторов SQL (DDL, DML) определить ситуации автоматической фиксации транзакций. Запустить два окна SQL Plus и определить, какой уровень изоляции транзакций установлен. Проиллюстрировать работу с командами SAVEPOINT, COMMIT и ROLLBACK.
Вариант 8.
Л. р. №1. Создание и заполнение отношений БД транспортного предприятия.
1. Отношение "Транспортные средства (ТС)" (поля "Гос. номерной знак", "Марка", "Кол-во мест").
2. Отношение "Водители" (поля "ФИО", "Класс", "Номер ТС").
3. Отношение "Маршруты":
Содержимое поля | Тип | Длина | Дес. | Примечание |
Номер маршрута | N | 4 | 0 | первичный ключ |
Пункт отправления | С | 50 | обязательное поле | |
Пункт прибытия | С | 50 | обязательное поле | |
Время отправления | D | обязательное поле | ||
Время в пути | N | 4 | 2 | обязательное поле |
Периодичность рейса | С | 10 | ежедн., четн., нечет., день недели | |
Цена билета | N | 7 | 2 | больше 0 |
4. Отношение "Рейсы" (поля "Номер маршрута", "Дата выезда", "Водитель", "Количество проданных билетов").
Примечание: не для всех отношений указаны ключевые поля. Если они не указаны, их нужно добавить!
Л. р. №2. Выборка данных. Один из запросов надо написать двумя способами и объяснить, какой из вариантов будет работать быстрее и почему.
Проверить, что у одного водителя не более 1-го рейса в день. Посчитать общую стоимость проданных билетов на конкретную дату. Создать упорядоченные списки:
· маршрутов из определенного пункта отправления;
· рейсов, выполненных определенным водителем;
· маршрутов, по которым нет рейсов.
Л. р. №3. Работа с представлениями. Для созданных представлений необходимо проверить с помощью запросов UPDATE и INSERT, являются ли они обновляемыми, и объяснить полученный результат.
1. Представление "Расписание" (отношение "Маршруты" с указанием времени прибытия).
2. Представление "Средняя загруженность маршрутов": номер маршрута – количество рейсов – количество проданных билетов / количество мест всего.
3. Представление "Рейсы, на которые все билеты проданы".
Л. р. №4. Изучение операций реляционной алгебры. Необходимо написать на языке SQL запросы, которые реализуют операции реляционной алгебры. Если для демонстрации операций РА недостаточно отношений, созданных во время выполнения работы №1, то следует создать дополнительные отношения.
Л. р. №5. Оптимизация запросов и работа с индексами. Общее для всех вариантов задание приведено в конце данного документа.
Л. р. №6. Изучение механизма транзакций. С помощью различных операторов SQL (DDL, DML) определить ситуации автоматической фиксации транзакций. Запустить два окна SQL Plus и определить, какой уровень изоляции транзакций установлен. Проиллюстрировать работу с командами SAVEPOINT, COMMIT и ROLLBACK.
Вариант 9.
Л. р. №1. Создание и заполнение отношений БД библиотеки.
1. Отношение "Рубрикатор" (поля "Шифр" и "Название рубрики").
2. Отношение "Каталог книг":
Содержимое поля | Тип | Длина | Дес. | Примечание |
Рубрикатор | C | 8 | внешний ключ к таблице "Рубрикатор" | |
Шифр издания | С | 10 | первичный ключ | |
Название | С | 80 | обязательное поле | |
Авторы | C | 50 | ||
Издательство | C | 25 | обязательное поле | |
Год издания | N | 4 | 0 | обязательное поле |
Количество страниц | N | 4 | 0 | |
Примечание | C | 40 | по умолчанию – учебник |
3. Отношение "Читатели" (поля "ФИО", "Адрес" и "Паспортные данные").
4. Отношение "Абонемент" (поля "Читатель", "Книга", "Дата выдачи" и "Дата возврата").
Примечание: не для всех отношений указаны ключевые поля. Если они не указаны, их нужно добавить!
Л. р. №2. Выборка данных. Один из запросов надо написать двумя способами и объяснить, какой из вариантов будет работать быстрее и почему.
Создать упорядоченные списки:
· новых (за последние три года относительно текущей даты) поступлений (по рубрикам и годам);
· издательств с указанием количества книг, изданных этими издательствами;
· рубрик, по которым нет книг;
· читателей-должников (которые взяли книги больше 30 дней назад и не вернули их) без указания взятых книг.
Л. р. №3. Работа с представлениями. Для созданных представлений необходимо проверить с помощью запросов UPDATE и INSERT, являются ли они обновляемыми, и объяснить полученный результат.
1. Представление "Издания, не пользующиеся спросом" (те книги, которые выпущены более года назад и их ни разу не выдавали читателям).
2. Представление "Активность читателей": читатель – количество прочитанных книг – количество книг, взятых в настоящее время.
3. Представление "Читатели-должники" (которые взяли книги больше 30 дней назад и не вернули их) c указанием невозвращенных книг.
Л. р. №4. Изучение операций реляционной алгебры. Необходимо написать на языке SQL запросы, которые реализуют операции реляционной алгебры. Если для демонстрации операций РА недостаточно отношений, созданных во время выполнения работы №1, то следует создать дополнительные отношения.
Л. р. №5. Оптимизация запросов и работа с индексами. Общее для всех вариантов задание приведено в конце данного документа.
Л. р. №6. Изучение механизма транзакций. С помощью различных операторов SQL (DDL, DML) определить ситуации автоматической фиксации транзакций. Запустить два окна SQL Plus и определить, какой уровень изоляции транзакций установлен. Проиллюстрировать работу с командами SAVEPOINT, COMMIT и ROLLBACK.
Вариант 10.
Л. р. №1. Создание и заполнение отношений БД библиотеки.
1. Отношение "Журналы" (поля "Индекс журнала", "Название" и "Издатель").
2. Отношение "Рубрикатор" (поля "Шифр" и "Название рубрики").
3. Отношение "Выпуски журналов" (поля "Идентификатор", "Индекс журнала", "Год", "Номер выпуска").
4. Отношение "Публикации":
Содержимое поля | Тип | Длина | Дес. | Примечание |
Автор(ы) публикации | С | 50 | ключевая комбинация полей | |
Название публикации | C | 60 | ||
Идентификатор выпуска (внешний ключ к таблице "Выпуски журналов") | N | 6 | 0 | |
Шифр рубрики | C | 6 | внешний ключ к таблице "Рубрикатор" | |
Страницы | С | 7 | например, с.56-62 | |
Примечание | C | 20 | название раздела журнала |
Примечание: не для всех отношений указаны ключевые поля. Если они не указаны, их нужно добавить!
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 |



