Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

Лабораторная работа 13 СОЗДАНИЕ И МОДИФИКАЦИЯ БАЗЫ ДАННЫХ И ТАБЛИЦ ВЫБОР И МОДИФИКАЦИЯ ДАННЫХ ТАБЛИЦ3 Цел

Работа добавлена на сайт samzan.net:


Оглавление

Лабораторная работа 1 3

СОЗДАНИЕ И МОДИФИКАЦИЯ БАЗЫ ДАННЫХ И ТАБЛИЦ ВЫБОР И МОДИФИКАЦИЯ ДАННЫХ ТАБЛИЦ 3

Цель работы 3

Содержание работы и методические указания к ее выполнению 3

Вариант 1 6

Вариант 2 6

Вариант 3 7

Вариант 4 7

Вариант 5 8

Вариант 6 8

Вариант 7 9

Вариант 8 9

Вариант 9 9

Вариант 10 10

Вариант 11 10

Вариант 12 10

Вариант 13 11

Вариант 14 11

Вариант 15 11

Вариант 16 12

Вариант 17 12

Вариант 18 12

Вариант 19 13

Лабораторная работа 2 14

ОТНОШЕНИЯ, ПРЕДСТАВЛЕНИЯ, ВЫБОРКИ ДАННЫХ 14

Задания 14

Вариант 1. Фрагмент БД недвижимости. 14

Вариант 2. Фрагмент БД деканата (преподаватели). 15

Вариант 3. Фрагмент БД деканата (студенты). 16

Вариант 4. Фрагмент БД института (сотрудники). 17

Вариант 5. Фрагмент БД библиотеки (журнальные публикации). 18

Вариант 6. Фрагмент БД отдела кадров. 19

Вариант 7. Фрагмент БД библиотеки (книги). 20

Вариант 8. Фрагмент БД больницы. 21

Вариант 9. Фрагмент БД торгового предприятия. 22

Вариант 10. Фрагмент БД складского предприятия. 23

Вариант 11. Фрагмент БД адвоката. 24

Вариант 12. Фрагмент БД гостиницы. 25

Вариант 13. Фрагмент БД организации. 26

Вариант 14. Фрагмент БД школы (учителя). 27

Вариант 15. Фрагмент БД отдела кадров. 28

Курсовая работа 29

Задание 29

Оформление и защита 29

Примеры тем прошлых лет 29

Рекомендованные материалы 30


Лабораторная работа 1

СОЗДАНИЕ И МОДИФИКАЦИЯ БАЗЫ ДАННЫХ И ТАБЛИЦ
ВЫБОР И МОДИФИКАЦИЯ ДАННЫХ ТАБЛИЦ

Цель работы

Создать базу данных, набор таблиц в ней и заполнить таблицы данными для последующей работы. Подготовить и реализовать серию запросов, связанных с выборкой информации и модификацией данных таблиц.

Содержание работы и методические указания к ее выполнению

1. Изучить набор команд языка SQL, связанный с созданием базы данных, созданием, модификацией структуры таблиц и их удалением, вставкой, модификацией и удалением записей таблиц :

database - выбор существующей базы данных;

close database - закрытие файлов текущей бызы данных;

drop database - удаление базы данных;

create table - создание таблицы базы данных;

alter table - модификация структуры базы данных;

drop table - удаление таблицы базы данных;

insert - добавление одной или нескольких строк в таблицу;

delete - удаление одной или нескольких строк из таблицы;

update - модификация одной или нескольких строк таблицы.

2. Создать базу данных.

3. Cоздать четыре таблицы в базе данных. При создании таблиц выполнить следующие условия:

- поля номер_поставщика, номер_детали, номер_изделия во всех таблицах имеет символьный тип и длину 6;

- поля рейтинг, вес и количество имеют целочисленный тип;

- поля фамилия, город (поставщика, детали или изделия), название (детали или изделия) имеют символьный тип nchar и длину 20;

- ни для одного поля не предусматривается использование индексов;

- для всех полей допускаются значения NULL и значения-дубликаты, кроме поля номер_поставщика из таблицы S, номер детали из таблицы P, номер изделия из таблицы J. Убедиться в успешности выполненных действий. При необходимости исправить ошибки.

4. Выполнить модификацию структуры таблицы SPJ, добавив в SPJ поле с датой поставки. Убедиться в успешности выполненных действий. При необходимости исправить ошибки.

5. Записать и выполнить совокупность запросов для занесения вышеприведенных данных в созданные таблицы

insert into имя_таблицы [(поле [,поле]...)]

values (константа [,константа]...)

6. Проверить результат заполнения таблиц, написав и выполнив простейший запрос

select * from имя_таблицы

При наличии ошибок выполнить корректировку, исправив либо удалив ошибочные строки таблиц

delete имя_таблицы

where предикат

update имя_таблицы

set поле=выражение [,поле=выражение]...

where предикат

Указанный предикат должен однозначно специфицировать удаляемые либо модифицируемые строки посредством задания соответствующих условий, которым должны удовлетворять отдельные поля строки.

Если посредством значений полей это сделать невозможно, можно прибегнуть к использованию значений скрытого rowid-столбца, представляющих собой внутренние номера записей. Для этого необходимо предварительно получить значения rowid-столбца для занесенных строк

select rowid, * from имя_таблицы

а затем требуемые значения использовать при формировании условий в операторах удаления либо модификации.

7. Изучить набор команд языка SQL, связанный с созданием запросов, добавлением, модификацией и удалением строк таблицы:

select - осуществление запроса по выборке информации из таблиц базы данных;

insert - добавление одной или нескольких строк в таблицу;

delete - удаление одной или нескольких строк из таблицы;

update - модификация одной или нескольких строк таблицы;

union - объединение запросов в один запрос.

8. Изучить состав, правила и порядок использования ключевых фраз оператора select:

select - описание состава данных, которые следует выбрать по запросу (обязательная фраза);

from - описание таблиц, из которых следует выбирать данные (обязательная фраза);

where - описание условий поиска и соединения данных при запросе;

group by - создание одной строки результата для каждой группы (группой называется множество строк, имеющих одинаковые значения в указанных столбцах);

having - наложение одного или более условий на группу;

order by - сортировка результата выполнения запроса по одному или нескольким столбцам;

into temp - создание временной таблицы, в которую будет осуществлен вывод результатов соответствующего запроса.

Порядок следования фраз в команде select должен соответствовать приведенной выше последовательности.

9. Подготовить и выполнить запросы по выборке информации из таблиц базы данных для решения нижеприведенных задач согласно номеру Вашего варианта.

10. Защитить лабораторную работу, ответив на контрольные вопросы.


Таблица поставщиков (S)

Hомеp поставщика

Фамилия

Рейтинг

Гоpод

S1

Смит

20

Лондон

S2

Джонс

10

Париж

S3

Блейк

30

Париж

S4

Кларк

20

Лондон

S5

Адамс

30

Афины

Таблица деталей (P)

Номер детали

Название

Цвет

Вес

Город

P1

Гайка

Красный

12

Лондон

P2

Болт

Зеленый

17

Париж

P3

Винт

Голубой

17

Рим

P4

Винт

Красный

14

Лондон

P5

Кулачок

Голубой

12

Париж

P6

Блюм

Красный

19

Лондон

Таблица изделий (J)

Номер изделия

Название

Город

J1

Жесткий диск

Париж

J2

Перфоратор

Рим

J3

Считыватель

Афины

J4

Принтер

Афины

J5

Флоппи-диск

Лондон

J6

Терминал

Осло

J7

Лента

Лондон

Таблица поставок (SPJ)

Номер поставщика

Номер детали

Номер изделия

Количество

S1

P1

J1

200

S1

P1

J4

700

S2

P3

J1

400

S2

P3

J2

200

S2

P3

J3

200

S2

P3

J4

500

S2

P3

J5

600

S2

P3

J6

400

S2

P3

J7

800

S2

P5

J2

100

S3

P3

J1

200

S3

P4

J2

500

S4

P6

J3

300

S4

P6

J7

300

S5

P2

J2

200

S5

P2

J4

100

S5

P5

J5

500

S5

P5

J7

100

S5

P6

J2

200

S5

P1

J4

100

S5

P3

J4

200

S5

P4

J4

800

S5

P5

J4

400

S5

P6

J4

500

Задания

Вариант 1

  1.  Получить номера и наименования  изделий, для которых  поставлялась  каждая  деталь, поставленная для  изделия J3.
  2.  Получить общее число изделий, для которых поставляет детали поставщик S1.
  3.  Для каждой детали определить поставщика, поставившего  не менее  половины от общего объема  поставок данной деталей. Для каждой детали вывести номер детали, наименование детали, номер поставщика, имя поставщика, объем поставок данного поставщика для данной детали,  общий объем поставок для данной детали
  4.  Для каждого поставщика определить количество изделий, для которых этот поставщик является основным (Основным считается поставщик, имеющий наибольший рейтинг. Если таких поставщиков несколько, выбирается поставщик, выполнивший для данного изделия наибольшее число поставок. Если таких  поставщиков несколько, выбирается первый по алфавиту). Вывести всю информацию о поставщике.
  5.  Выбрать поставщиков, которые поставили какую-либо деталь в объеме большем, чем поставщик с максимальным рейтингом. Вывести номер поставщика, номер детали,  общий объем поставок  данной детали  данным поставщиком, номер поставщика с максимальным рейтингом,  общий объем поставок  данной детали поставщиком с  максимальным рейтингом.
  6.  Выбрать все пары деталей такие, что обе детали имеют одинаковый цвет, изготавливаются в разных городах, но поставляются в один город.   Вывести  номер детали1, наименование детали1,  номер детали2, наименование детали2,  цвет,  город изделия, объем поставки детали1, объем поставки детали2

Вариант 2

  1.  Выдать номера и фамилии поставщиков, поставляющих одну и ту же деталь для всех изделий.
  2.  Выдать номера деталей, поставляемых каким-либо поставщиком из Лондона.
  3.  Для каждой детали определить поставщика, поставившего  не менее  половины от общего объема  поставок данной деталей. Для каждой детали вывести номер детали, наименование детали, номер поставщика, имя поставщика, объем поставок данного поставщика для данной детали,  общий объем поставок для данной детали, количество городов,  в которые осуществлялись поставки детали.
  4.  Выбрать все пары деталей такие, что обе детали изготавливаются в одном городе и поставляются разными поставщиками для одного изделия. Вывести  номер детали1, наименование детали1,  номер детали2, наименование детали2,  номер изделия, номер поставщика детали1, номер поставщика детали2.
  5.  Выбрать поставщиков, которые поставили какую-либо деталь в объеме большем, чем поставщик с максимальным рейтингом. Вывести номер поставщика, номер детали,  общий объем поставок  данной детали  данным поставщиком, номер поставщика с максимальным рейтингом,  общий объем поставок  данной детали поставщиком с  максимальным рейтингом,   количество городов, в которые были выполнены поставки.
  6.  Выбрать изделия, для которых основной поставщик находится в том же городе, что и изделие (Основным считается поставщик, для которого  поставки деталей для данного изделия имеют  наибольший общий вес. Если таких поставщиков несколько, выбирается  поставщик с наибольшим рейтингом. Если  и таких поставщиков несколько, выбирается первый по алфавиту).  Целевой список – номер и город изделия, номер и город  поставщика, общий объем  деталей, поставленных данным поставщиком для данного изделия.

Вариант 3

  1.  Получить список номеров поставщиков, поставивших для  одного и того же изделия  все  детали , изготавливаемые  в городе, в котором не проживают поставщики с минимальным и максимальным рейтингом.
  2.  Для каждого изделия выбрать основного поставщика (основным считается поставщик,  который поставил  наибольшее количество деталей для данного изделия.  Если таких поставщиков несколько, выбирается  поставщик с наибольшим рейтингом. Если таких   поставщиков несколько, выбирается первый по алфавиту.) Вывести номер изделия, номер поставщика, имя поставщика, рейтинг поставщика и общий объем  деталей, поставленных данным поставщиком для данного изделия.
  3.  Выдать номера изделий, для которых детали поставляются по крайней мере одним поставщиком не из того же самого города.
  4.  Для каждого изделия выбрать потенциальных поставщиков. Потенциальным считается поставщик не сделавший ни одной поставки  деталей для данного изделия, но поставляющий  для других изделий детали, необходимые для данного изделия.
  5.  Для всех возможных сочетаний  “номер изделия , цвет детали “ вывести  номер изделия , название изделия, цвет детали, общий  вес поставленных деталей данного цвета в фунтах (в виде <вес в фунтах = 999> ) и в граммах   (в виде <вес в граммах = 999> ). Если  поставок деталей какого-либо цвета для какого-либо изделия не было – в результирующем  наборе д.б. пусто или null
  6.  Выбрать все пары поставщиков, поставляющие одинаковые детали для одного и того же изделия. Вывести номер изделия, номер детали,  номер поставщика1,   общий объем поставки данной детали для данного изделия поставщика1,  номер поставщика2,   общий объем поставки данной детали для данного изделия поставщика2

Вариант 4

  1.  Выбрать все пары “номер изделия , номер поставщика “ такие, что данный поставщик поставил не менее  половины от общего объема  поставок деталей для данного изделия. Для каждой пары вывести номер изделия, наименование изделия, номер поставщика, имя поставщика, объем поставок данного поставщика для данного изделия,  общий объем поставок для данного изделия
  2.  Для каждого поставщика определить количество изделий, для которых этот поставщик является основным (основным считается поставщик,  который поставил  наибольшее количество деталей для данного изделия.  Если таких поставщиков несколько, выбирается  поставщик с наибольшим рейтингом. Если таких   поставщиков несколько, выбирается первый по алфавиту.). Вывести всю информацию о поставщике.
  3.  Для каждой пары  “номер изделия , номер детали “  вывести  номер изделия , номер детали,  общий объем поставок данной детали для данного изделия,   %  общего объема поставок данной детали для данного изделия от общего объема поставок всех  деталей для данного изделия.
  4.  Для всех возможных сочетаний  “номер изделия , цвет детали “ вывести  номер изделия , название изделия, цвет детали, общий  вес поставленных деталей данного цвета в фунтах (в виде <вес в фунтах = 999> ) и в граммах   (в виде <вес в граммах = 999> ). Если  поставок деталей какого-либо цвета для какого-либо изделия не было – в результирующем  наборе ‘ нет пос тавок ‘
  5.  Выбрать все пары поставщиков, поставляющие одинаковые детали для одного и того же изделия.Вывести номер изделия, номер детали,  номер поставщика1,   общий объем поставки данной детали для данного изделия поставщика1,  номер поставщика2,   общий объем поставки данной детали для данного изделия поставщика2, город изделия, город детали, город поставщика1 , город поставщика2
  6.  Удалить все изделия, для которых нет поставок деталей.

Вариант 5

  1.  Получить  для каждого изделия   информацию  о поставщике, выполнившем более половины общего объема поставок для изделия. Если такого поставщика нет – написать  ‘отсутствует’
  2.  Для каждого поставщика определить количество изделий, для которых этот поставщик является основным (Основным считается поставщик, для которого  поставки деталей для данного изделия имеют  наибольший общий вес. Если таких поставщиков несколько, выбирается  поставщик с наибольшим рейтингом. Если  и таких  поставщиков несколько, выбирается первый по алфавиту). Вывести всю информацию о поставщике.
  3.  Выбрать изделия, для которых основной поставщик находится в другом городе (основным считается поставщик,  который поставил  наибольшее количество деталей для данного изделия.  Если таких поставщиков несколько, выбирается  поставщик с наибольшим рейтингом. Если таких   поставщиков несколько, выбирается первый по алфавиту).  Целевой список – номер и город изделия, номер и город  поставщика, общий объем  деталей, поставленных данным поставщиком для данного изделия.
  4.  Для каждой пары  “номер изделия , номер детали “  вывести  номер изделия , номер детали,  общий объем поставок данной детали для данного изделия,   %  общего объема поставок данной детали для данного изделия от общего объема  поставок всех  деталей для данного изделия. Добавить в результирующий набор промежуточные итоги по каждому изделию
  5.  Выбрать все пары деталей такие, что обе детали имеют одинаковый цвет, изготавливаются в разных городах, но поставляются в один город.   Вывести  номер детали1, наименование детали1,  номер детали2, наименование детали2,  цвет, город изделия
  6.  Получить номера изделий, для которых детали полностью поставляет поставщик S1.

Вариант 6

  1.  Для каждого изделия определить поставщиков, поставляющих более ¼  от максимального общего объема поставок для изделий  из Лондона.
  2.  Выбрать изделия, для которых нет поставщика,  выполнившего не менее  половины от общего объема  поставок деталей для данного изделия.
  3.  Выбрать изделия, для которых основной поставщик находится в другом городе (Основным считается поставщик, для которого  поставки деталей для данного изделия имеют  наибольший общий вес. Если таких поставщиков несколько, выбирается  поставщик с наибольшим рейтингом. Если  и таких  поставщиков несколько, выбирается первый по алфавиту).  Целевой список – номер и город изделия, номер и город  поставщика, общий объем  деталей, поставленных данным поставщиком для данного изделия.
  4.  Для каждой пары  “номер изделия , номер детали “  вывести  номер изделия , номер детали,  общий объем поставок данной детали для данного изделия,   %  общего объема поставок данной детали для данного изделия от общего объема  поставок всех  деталей для данного изделия, название и город изделия, название и город детали
  5.  Выбрать все пары деталей такие, что обе детали имеют одинаковый цвет, изготавливаются в разных городах, но поставляются в один город.   Вывести  номер детали1, наименование детали1,  номер детали2, наименование детали2,  цвет,  город изделия, город детали1, город детали2
  6.  Получить номера изделий, для которых средний объем поставки деталей P1 больше наибольшего объема поставки любой детали для изделия J1.

Вариант 7

  1.  Для каждой поставляемой для некоторого изделия детали выдать ее номер, номер изделия и соответствующее общее количество деталей.
  2.  Получить номера и фамилии поставщиков, поставляющих детали для какого-либо изделия с деталью P1 в количестве, большем, чем средний объем поставок детали P1 для этого изделия.
  3.  Увеличить на 10 рейтинг всех поставщиков, рейтинг которых в настоящее время меньше, чем рейтинг поставщика S4.
  4.  Постройте таблицу, содержащую список номеров изделий, которые либо находятся в Лондоне, либо для них поставляются детали каким-нибудь поставщиком из Лондона.
  5.  Выдать список всех поставок, в которых количество деталей находится в диапазоне от 300 до 750 включительно.
  6.  Получить номера изделий, использующих по крайней мере одну деталь, поставляемую поставщиком S5.

Вариант 8

  1.  Выдать общее количество деталей P1, поставляемых поставщиком S1.
  2.  Получить все пары названий городов, таких, что какой-либо поставщик из первого города поставляет детали для некоторого изделия, изготовляемого во втором городе.
  3.  Получить номера деталей, поставляемых каким-либо поставщиком из Лондона, для изделия, изготавливаемого также в Лондоне.
  4.  Построить таблицу с номерами поставщиков и парами номеров деталей, таких, что некоторый поставщик поставляет обе указанные детали.
  5.  Выдать цвета деталей, поставляемых поставщиком S6.
  6.  Получить номера и фамилии поставщиков, поставляющих деталь Р1 для какого-либо изделия в количестве, большем среднего объема поставок детали Р1 для этого изделия.

Вариант 9

  1.  Выдать номера и фамилии поставщиков, поставляющих одну и ту же деталь для всех изделий.
  2.  Выдать номера изделий, детали для которых поставляет каждый поставщик, поставляющий  какую-либо красную деталь.
  3.  Увеличить размер поставки на 10 процентов для всех поставок тех поставщиков, которые поставляют какую-либо красную деталь.
  4.  Построить таблицу с комбинациями "цвет детали-город, где хранится деталь", исключая дубликаты пар (цвет-город).
  5.  Выдать названия изделий, для которых поставляются детали поставщиком S6.
  6.  Получить номера и названия изделий, для которых поставщик S6 поставляет несколько деталей каждого из поставляемых им типов.

Вариант 10

  1.  Выдать номера и фамилии поставщиков, поставляющих по крайней мере одну деталь, поставляемую по крайней мере одним поставщиком, который поставляет по крайней мере одну красную деталь.
  2.  Получить полный список деталей для всех изделий, изготавливаемых в Лондоне.
  3.  Построить таблицу, содержащую список номеров деталей, которые поставляются либо каким-нибудь поставщиком из Лондона, либо для какого-либо изделия в Лондон.
  4.  Вставить в таблицу S нового поставщика с номером S10 с фамилией Уайт из города Нью-Йорк с неизвестным рейтингом.
  5.  Для каждой поставляемой для некоторого изделия детали выдать ее номер, номер изделия и соответствующее общее количество деталей.
  6.  Получить номера изделий, для которых детали полностью поставляет поставщик S6.

Вариант 11

  1.  Получить список всех поставок, в которых количество деталей находится в диапазоне от 300 до 750 включительно.
  2.  Выдать номера изделий, использующих по крайней мере одну деталь, поставляемую поставщиком S1.
  3.  Получить номера и названия деталей, поставляемых для какого-либо изделия в Лондоне.
  4.  Построить таблицу с упорядоченным списком всех городов, в которых размещаются по крайней мере один поставщик, деталь или изделие.
  5.  Выдать номера и фамилии поставщиков, поставляющих детали для какого-либо изделия с деталью P1 в количестве, большем, чем средний объем поставок детали P1 для этого изделия.
  6.  Получить номера изделий, использующих только детали, поставляемые поставщиком S6.

Вариант 12

  1.  Выдать номера и названия изделий, для которых город является первым в алфавитном списке таких городов.
  2.  Получить цвета деталей, поставляемых поставщиком S1.
  3.  Выдать номера и фамилии поставщиков, поставляющих деталь Р1 для какого-либо изделия в количестве, большем среднего объема поставок детали Р1 для этого изделия.
  4.  Получить полный список деталей для всех изделий.
  5.  Изменить цвет красных деталей с весом менее 15 фунтов на желтый.
  6.  Выдать общее число изделий, для которых поставляет детали поставщик S6.
  7.  Получить номера изделий, детали для которых поставляет каждый поставщик, поставляющий какую-либо красную деталь.

Вариант 13

  1.  Выдать названия изделий, для которых поставляются детали поставщиком S1.
  2.  Получить номера деталей, поставляемых для какого-либо изделия поставщиком, находящимся в том же городе, где изготавливается это изделие.
  3.  Выдать номера и названия изделий, для которых поставщик S1 поставляет несколько деталей каждого из поставляемых им типов.
  4.  Увеличить на 10 рейтинг тех поставщиков, объем поставки которых выше среднего.
  5.  Выдать общее количество деталей P1, поставляемых поставщиком S6.
  6.  Получить номера и фамилии поставщиков, поставляющих по крайней мере одну деталь, поставляемую по крайней мере одним поставщиком, который поставляет по крайней мере одну красную деталь.

Вариант 14

  1.  Получить все триплеты "номер поставщика, номер детали и номер изделия", такие, что в каждом триплете указанные поставщик, деталь и изделие не являются попарно соразмещенными.
  2.  Выдать номера изделий, использующих только детали, поставляемые поставщиком S1.
  3.  Получить все триплеты "номер поставщика, номер детали и номер изделия", такие, что в каждом триплете указанные поставщик, деталь и изделие являются попарно соразмещенными.
  4.  Получить номера деталей, поставляемых для всех изделий из Лондона.
  5.  Удалить все изделия из Рима и все соответствующие поставки.
  6.  Построить таблицу с номерами изделий и городов, где они изготавливаются, такие, что второй буквой названия города является "О".
  7.  Построить таблицу с упорядоченным списком номеров и фамилиями поставщиков, поставляющих детали для изделия с номером J1.

Вариант 15

1.        Получить полный список деталей для всех изделий.

2.       Для каждого изделия выбрать основного поставщика (основным считается поставщик,  который поставил  наибольшее количество деталей для данного изделия.  Если таких поставщиков несколько, выбирается  поставщик с наибольшим рейтингом. Если таких   поставщиков несколько, выбирается первый по алфавиту.) Вывести номер изделия, номер поставщика, имя поставщика, рейтинг поставщика и общий объем  деталей, поставленных данным поставщиком для данного изделия.

3.        Получить номера и названия деталей, поставляемых для какого-либо изделия в Лондоне.

4.        Получить номера изделий, использующих по крайней мере одну деталь, поставляемую поставщиком S6.

5.        Выдать номера изделий, детали для которых поставляет каждый поставщик, поставляющий  какую-либо красную деталь.

6.       Выбрать поставщиков, которые поставили какую-либо деталь в объеме большем, чем поставщик с максимальным рейтингом. Вывести номер поставщика, номер детали,  общий объем поставок  данной детали  данным поставщиком, номер поставщика с максимальным рейтингом,  общий объем поставок  данной детали поставщиком с  максимальным рейтингом,   количество городов, в которые были выполнены поставки.

Вариант 16

1.        Получить номера и названия деталей, поставляемых для какого-либо изделия в Лондоне.

2.       Для каждого изделия выбрать потенциальных поставщиков. Потенциальным считается поставщик не сделавший ни одной поставки  деталей для данного изделия, но поставляющий  для других изделий детали, необходимые для данного изделия.

3.       Для всех возможных сочетаний  “номер изделия , цвет детали “ вывести  номер изделия , название изделия, цвет детали, общий  вес поставленных деталей данного цвета в фунтах (в виде <вес в фунтах = 999> ) и в граммах   (в виде <вес в граммах = 999> ). Если  поставок деталей какого-либо цвета для какого-либо изделия не было – в результирующем  наборе ‘ нет пос тавок ‘

4.        Получить номера и названия изделий, для которых поставщик S6 поставляет несколько деталей каждого из поставляемых им типов.

5.       Получить список номеров поставщиков, поставивших для  одного и того же изделия  все  детали , изготавливаемые  в городе, в котором не проживают поставщики с минимальным и максимальным рейтингом.

6.       Для каждого изделия определить поставщиков, поставляющих более ¼  от максимального общего объема поставок для изделий  из Лондона.

Вариант 17

1.       Получить номера изделий, для которых детали полностью поставляет поставщик S1.

2.        Получить список всех поставок, в которых количество деталей находится в диапазоне от 300 до 750 включительно.

3.       Выбрать все пары поставщиков, поставляющие одинаковые детали для одного и того же изделия. Вывести номер изделия, номер детали,  номер поставщика1,   общий объем поставки данной детали для данного изделия поставщика1,  номер поставщика2,   общий объем поставки данной детали для данного изделия поставщика2

4.        Выдать номера и фамилии поставщиков, поставляющих одну и ту же деталь для всех изделий.

5.       Выбрать все пары деталей такие, что обе детали имеют одинаковый цвет, изготавливаются в разных городах, но поставляются в один город.   Вывести  номер детали1, наименование детали1,  номер детали2, наименование детали2,  цвет,  город изделия, объем поставки детали1, объем поставки детали2

6.       Для каждого поставщика определить количество изделий, для которых этот поставщик является основным (Основным считается поставщик, имеющий наибольший рейтинг. Если таких поставщиков несколько, выбирается поставщик, выполнивший для данного изделия наибольшее число поставок. Если таких  поставщиков несколько, выбирается первый по алфавиту). Вывести всю информацию о поставщике.

Вариант 18

  1.  Построить таблицу с номерами изделий и городов, где они изготавливаются, такие, что второй буквой названия города является "О".
  2.  Получить номера и фамилии поставщиков, поставляющих по крайней мере одну деталь, поставляемую по крайней мере одним поставщиком, который поставляет по крайней мере одну красную деталь.
  3.  Для каждой поставляемой для некоторого изделия детали выдать ее номер, номер изделия и соответствующее общее количество деталей.
  4.  Получить номера изделий, для которых детали полностью поставляет поставщик S6.
  5.  Выдать названия изделий, для которых поставляются детали поставщиком S6.
  6.  Построить таблицу с номерами поставщиков и парами номеров деталей, таких, что некоторый поставщик поставляет обе указанные детали.

Вариант 19

  1.  Для каждого поставщика определить количество изделий, для которых этот поставщик является основным (основным считается поставщик,  который поставил  наибольшее количество деталей для данного изделия.  Если таких поставщиков несколько, выбирается  поставщик с наибольшим рейтингом. Если таких   поставщиков несколько, выбирается первый по алфавиту.). Вывести всю информацию о поставщике.
  2.  Выбрать изделия, для которых основной поставщик находится в другом городе (Основным считается поставщик, для которого  поставки деталей для данного изделия имеют  наибольший общий вес. Если таких поставщиков несколько, выбирается  поставщик с наибольшим рейтингом. Если  и таких  поставщиков несколько, выбирается первый по алфавиту).  Целевой список – номер и город изделия, номер и город  поставщика, общий объем  деталей, поставленных данным поставщиком для данного изделия.
  3.  Получить полный список деталей для всех изделий.
  4.  Увеличить размер поставки на 10 процентов для всех поставок тех поставщиков, которые поставляют какую-либо красную деталь.
  5.  Постройте таблицу, содержащую список номеров изделий, которые либо находятся в Лондоне, либо для них поставляются детали каким-нибудь поставщиком из Лондона.
  6.  Для каждой пары  “номер изделия , номер детали “  вывести  номер изделия , номер детали,  общий объем поставок данной детали для данного изделия,   %  общего объема поставок данной детали для данного изделия от общего объема  поставок всех  деталей для данного изделия, название и город изделия, название и город детали


Лабораторная работа 2

ОТНОШЕНИЯ, ПРЕДСТАВЛЕНИЯ, ВЫБОРКИ ДАННЫХ

Задания

Вариант 1. Фрагмент БД недвижимости.

Задание №1. Создание и заполнение отношений.

  1. Отношение "Владельцы" (идентификатор, "Имя", "Телефон").
  2. Отношение "Станции метро" (идентификатор, "Название").
  3. Отношение "Квартиры" (основное):

Содержимое поля

Тип

Длина

Дес.

Примечание

Идентификатор

N

5

0

первичный ключ

Номер владельца

N

6

0

внешний ключ

Общая площадь

N

4

1

обязательное поле

Жилая площадь

N

4

1

обязательное поле

Количество комнат

N

1

0

обязательное поле

Размер кухни

N

3

1

обязательное поле

Этаж

N

2

0

обязательное поле

Всего этажей в доме

N

2

0

 

Ближайшая станция метро

N

3

0

внешний ключ

Цена

N

7

0

обязательное поле

Адрес

C

30

 

обязательное поле

Дата поступления

D

 

 

информации в БД

Задание №2. Выборка данных.

Проверить, что для всех квартир общая площадь больше, чем жилая площадь плюс размер кухни. Создать упорядоченные списки:

  1. трехкомнатных квартир, расположенных не на первом и последнем этажах, информация о которых поступила за последний месяц;
  2. владельцев и их квартир (идентификатор квартиры и адрес);
  3. квартир общей площадью не менее 80 м2 не дороже 60000, расположенных вблизи станции метро "Китай–город".

Задание №3. Работа с представлениями.

Создать представления:

  1. "Двухкомнатные квартиры" (все поля отношения "Квартиры").
  2. "Владение квартирами" (имя владельца, количество квартир, общая площадь этих квартир).
  3. "Владельцы однокомнатных квартир" (имя, телефон, площадь квартиры).

Вариант 2. Фрагмент БД деканата (преподаватели).

Задание №1. Создание и заполнение отношений.

  1. Отношение "Дисциплины" ("Шифр дисциплины", "Название").
  2. Отношение "Преподаватели" (идентификатор, "ФИО", "Кафедра").
  3. Отношение "Сессия" (основное):

Содержимое поля

Тип

Длина

Дес.

Примечание

Факультет

C

4

 

обязательное поле

Курс

N

1

0

обязательное поле

Шифр дисциплины

N

5

2

ключевая комбинация полей

Группа

С

5

0

Экзаменатор

N

4

0

идентификатор, внешний ключ

Аудитория

N

3

0

0

Дата

D

0

0

0

Время

T

0

0

0

Задание №2. Выборка данных.

Проверить уникальность комбинации "Аудитория", "Дата", "Время". Определить дисциплины, по которым нет экзаменов.

Создать расписание экзаменов:

  1. для преподавателей двух кафедр;
  2. для одной произвольной группы.

Задание №3. Работа с представлениями.

Создать представления:

  1. "Количество экзаменов" (группа, количество экзаменов).
  2. "Количество экзаменов для факультетов АВТ и ФПМ" (название дисциплины, количество экзаменов на АВТ, количество экзаменов на ФПМ).
  3. "Преподаватели кафедры ВСиС" (ФИО преподавателя).

Примечания:

  1. Поля основного отношения с типами и ограничениями целостности приведены в таблице.
  2. Для остальных отношений в скобках перечислены обязательные поля.
  3. Типы полей обозначаются следующим образом: N – числовое, C – символьное, D – дата, T – время, L – логическое (имеющее значения .T. – истина и .F. – ложь).
  4. Для некоторых представлений также в скобках перечислены поля.


Вариант 3. Фрагмент БД деканата (студенты).

Задание №1. Создание и заполнение отношений.

  1. Отношение "Дисциплины" ("Шифр", "Название дисциплины").
  2. Отношение "Студенты" (основное):

Содержимое поля

Тип

Длина

Дес.

Примечание

Номер зачётной книжки

N

6

0

первичный ключ

ФИО

C

20

 

обязательное поле

Год поступления

N

4

0

обязательное поле

Группа

С

7

0

обязательное поле

Курс

N

1

0

обязательное поле

Средний балл

N

3

1

0

Форма обучения

С

8

0

по умолчанию – дневная

Академический отпуск

L

1

0

по умолчанию – .F.

  1. Отношение "Сессия" ("Группа", "Шифр дисциплины" (внешний ключ), "Дата", "Время", "Аудитория").

Задание №2. Выборка данных.

Проверить уникальность комбинации "Дата", "Время", "Аудитория". Создать расписание экзаменов на сессию для произвольной группы.

Создать упорядоченные списки:

  1. студентов групп ‘С’ второго курса (без находящихся в академическом отпуске);
  2. студентов, имеющих наибольший средний бал в своей группе.

Задание №3. Работа с представлениями.

Создать представления:

  1. "Списки групп" для дневной формы обучения (группа, фамилия, номер зачётной книжки, средний балл).
  2. "Успеваемость" (группа, средний балл по группе, минимальный средний балл, максимальный средний балл, разница (max-min)).
  3. "Количество экзаменов" (группа, количество экзаменов).
  4.  


Вариант 4. Фрагмент БД института (сотрудники).

Задание №1. Создание и заполнение отношений.

  1. Отношение "Отделы" (идентификатор, "Название отдела").
  2. Отношение "Научные направления" (идентификатор, "Название научной специальности").
  3. Отношение "Сотрудники" (основное):

Содержимое поля

Тип

Длина

Дес.

Примечание

Табельный номер

N

4

0

первичный ключ

ФИО

C

20

0

обязательное поле

Должность

C

15

0

обязательное поле

Ученое звание

С

10

0

0

Шифр специальности

N

6

0

специальность по диплому

Научная специализация

С

8

0

внешний ключ

Номер отдела

С

6

0

внешний ключ

Задание №2. Выборка данных.

Создать упорядоченные списки:

  1. научных кадров по каждой специальности (с указанием научного звания);
  2. научных направлений, по которым нет специалистов.

Определить, в каком отделе (отделах) работает больше всего сотрудников.

Задание №3. Работа с представлениями.

Создать представления:

  1. "Сотрудники отдела “Информационные технологии”" (все поля отношения "Сотрудники").
  2. "Качественный состав научных сотрудников отделов" (отдел, количество профессоров, количество доцентов).
  3. "Научные кадры" (отдел, научная специализация, количество сотрудников).


Вариант 5. Фрагмент БД библиотеки (журнальные публикации).

Задание №1. Создание и заполнение отношений.

  1. Отношение "Журналы" (идентификатор, "Название", "Издатель").
  2. Отношение "Рубрикаторы" ("Шифр", "Название рубрики").
  3. Отношение "Публикации (статьи)" (основное):

Содержимое поля

Тип

Длина

Дес.

Примечание

Индекс журнала

N

6

0

ключевая комбинация полей

Автор(ы)

C

40

0

Название

C

40

0

Год выпуска

N

4

0

обязательное поле

Номер выпуска

N

2

0

обязательное поле

Шифр рубрики

C

6

0

внешний ключ

Страницы

С

7

0

0

Примечание

C

20

0

раздел журнала

Задание №2. Выборка данных.

Создать упорядоченные списки:

  1. публикаций за последние 3 года (по журналам и годам);
  2. публикаций по рубрикам;
  3. публикаций по разделам "Базы данных" и СУБД;
  4. рубрик, по которым нет публикаций.

Задание №3. Работа с представлениями.

Создать представления:

  1. "Публикации за текущий год" (все поля отношения "Публикации").
  2. "Авторы, публиковавшиеся более одного раза" (все поля отношения "Публикации").
  3. "Состав по рубрикам" (рубрика, количество публикаций всего, количество публикаций за последние три года).


Вариант 6. Фрагмент БД отдела кадров.

Задание №1. Создание и заполнение отношений.

  1. Отношение "Отделы" ("Номер отдела", "Название отдела").
  2. Отношение "Сотрудники" (основное):

Содержимое поля

Тип

Длина

Дес.

Примечание

Табельный номер

N

6

0

первичный ключ

ФИО

C

20

 

обязательное поле

Пол

C

1

 

по умолчанию – мужской

Дата рождения

D

 

 

 

Образование

C

20

 

высшее, среднее, начальное

Номер отдела

N

3

0

внешний ключ

Должность

C

20

 

обязательное поле

  1. Отношение "Дети" (внешний ключ к отношению "Сотрудники", "Имя", "Дата рождения").

Задание №2. Выборка данных.

Создать упорядоченные списки:

  1. сотрудников с детьми от 3 до 12 лет включительно;
  2. отделов, в которых нет сотрудников.

Посчитать количество сотрудников с разными уровнями образования.

Задание №3. Работа с представлениями.

Создать представления:

  1. "Отделы и сотрудники" (поля обоих отношений без повторов).
  2. "Бездетные сотрудники" (все поля отношения "Сотрудники").
  3. "Образовательный уровень сотрудников" (уровень образования, количество мужчин, количество женщин).


Вариант 7. Фрагмент БД библиотеки (книги).

Задание №1. Создание и заполнение отношений.

  1. Отношение "Издательства" (идентификатор, "Название", "Адрес").
  2. Отношение "Рубрикаторы" ("Шифр рубрики", "Название рубрики").
  3. Отношение "Каталог книг" (основное):

Содержимое поля

Тип

Длина

Дес.

Примечание

Рубрикатор

C

8

 

ключевая комбинация полей

Шифр

C

6

 

Автор(ы)

C

25

 

обязательное поле

Название

C

25

 

обязательное поле

Место издания

C

10

 

 

Шифр издательства

C

5

 

внешний ключ

Год издания

N

4

0

 

Количество страниц

N

4

0

 

Примечание

C

20

 

по умолчанию – учебник

Задание №2. Выборка данных.

Посчитать, сколько книг не имеют комментариев. Создать списки:

  1. поступлений за последние 3 года (по рубрикам, авторам, годам);
  2. рубрик, по которым нет книг;
  3. автор – название издательства, в котором автор издавался.

Задание №3. Работа с представлениями.

Создать представления:

  1. "Первая – последняя публикации" (автор, год выхода первой публикации, год выхода последней публикации).
  2. "Учебники и учебные пособия" (все поля отношения "Каталог книг").
  3. "Состав по рубрикам" (рубрика, количество книг до 1980 года издания, количество книг после 1980 года издания).


Вариант 8. Фрагмент БД больницы.

Задание №1. Создание и заполнение отношений.

  1. Отношение "Больничные палаты" ("Номер палаты", "Количество коек", "Отделение").
  2. Отношение "Врачи" (идентификатор, "ФИО врача", "Отделение", "Специализация").
  3. Отношение "Пациенты" (основное):

Содержимое поля

Тип

Длина

Дес.

Примечание

Регистрационный №

N

6

0

первичный ключ

ФИО

C

20

0

обязательное поле

Пол

C

1

0

по умолчанию – женский

Номер полиса

C

15

0

0

Дата поступления

D

0

0

обязательное поле

Номер палаты

N

3

0

внешний ключ

Лечащий врач

N

6

0

внешний ключ

Диагноз

C

20

0

0

Дата выписки

D

0

0

заполняется при выписке пациента

Задание №2. Выборка данных.

Проверить, что в одной палате не лежат мужчины и женщины. Посчитать количество язвенников, поступивших в текущем году.

Создать упорядоченные списки:

  1. пациентов по палатам с указанием ФИО врача и диагноза;
  2. количества занятых мест в каждой палате.

Задание №3. Работа с представлениями.

Создать представления:

  1. "Специализация больницы" (диагноз, количество пациентов-мужчин, количество пациентов-женщин).
  2. "Текущие пациенты отделения “Хирургия”" (все поля отношения "Пациенты").
  3. "Общее количество мест" (отделение, количество мест).


Вариант 9. Фрагмент БД торгового предприятия.

Задание№1. Создание и заполнение отношений.

  1. Отношение "Поставщики" (идентификатор, "Название", "Адрес").
  2. Отношение "Товары" (идентификатор, "Название", "Категория товара").
  3. Отношение "Поставки" (основное):

Содержимое поля

Тип

Длина

Дес.

Примечание

Шифр поставки

N

6

0

первичный ключ

Индекс поставщика

C

6

0

внешний ключ

Индекс товара

C

8

0

внешний ключ

Единица измерения

C

3

0

'кг', 'шт', 'уп' (по умолчанию – 'кг')

Количество товара

N

7

2

обязательное поле

Цена единицы товара

N

8

2

0

Дата поставки

D

0

0

0

Задание №2. Выборка данных.

Создать список поставщиков, от которых нет поставок.

Создать упорядоченные списки:

  1. поставщиков, от которых есть поставки, с адресами;
  2. названий товаров, которые есть в наличии:
  3. товаров, чей остаток меньше 100 кг.

Задание №3. Работа с представлениями.

Создать представления:

  1. "Товары на складе" (соединение отношений "Поставки", "Товары" и "Поставщики").
  2. "Поставщики и категории товаров" (поставщик, категория).
  3. "Общая стоимость товаров" (название товара, общая стоимость).


Вариант 10. Фрагмент БД складского предприятия.

Задание№1. Создание и заполнение отношений.

  1. Отношение "Поставщики" (идентификатор, "Название ", "Телефон").
  2. Отношение "Поставки" (основное):

Содержимое поля

Тип

Длина

Дес.

Примечание

Шифр поставки

N

6

0

ключевая комбинация полей

Индекс товара

C

6

0

Индекс поставщика

C

8

0

внешний ключ

Единица измерения

C

3

0

значения 'шт', 'кг', 'уп', 'кор' (по умолчанию – 'шт')

Вес единицы товара

N

7

2

0

Количество товара

N

7

2

обязательное поле

Номер склада

N

2

0

0

Номер линии

С

1

0

0

Дата поставки

D

0

0

обязательное поле

  1. Отношение "Заказы" (первичный ключ (идентификатор, "Индекс товара"), "Единица измерения", "Количество").

Задание №2. Выборка данных.

Создать упорядоченный список товаров с наименованиями и телефонами поставщиков. Для конкретного заказа выдать список местоположения заказанных товаров на складах (с учётом количества товара в заказе и на складе). Посчитать общий вес конкретного заказа.

Задание №3. Работа с представлениями.

Создать представления:

  1. "Товары на складе" (соединение отношений "Поставки" и "Поставщики").
  2. "Недостаток товаров": для заказа, который не может быть выполнен из-за недостатка товара, выдать список пунктов этого заказа, которые не могут быть выполнены.
  3. "Поставки и поставщики" (поставщик, индекс поставки).


Вариант 11. Фрагмент БД адвоката.

Задание №1. Создание и заполнение отношений.

  1. Отношение "Статьи УК" (идентификатор, "Статья", "Минимальный срок", "Максимальный срок").
  2. Отношение "Клиенты" (основное):

Содержимое поля

Тип

Длина

Дес.

Примечание

Номер дела

N

6

0

ключевая комбинация полей

ФИО

C

20

0

Дата рождения

D

0

0

0

Дата начала дела

D

0

0

обязательное поле

Номер камеры

N

3

0

0

Размер гонорара

N

7

2

0

Срок

N

4

1

по приговору

Дата окончания дела

D

0

0

0

  1. Отношение "Статьи" (внешний ключ ("Номер дела", "ФИО"), внешний ключ "Номер статьи").

Задание №2. Выборка данных.

Проверить, что обвиняемые по одному делу не сидят в одной камере. Посчитать общую сумму гонорара (по законченным делам).

Создать упорядоченные (по дате начала дела) списки:

  1. подзащитных (по делам);
  2. клиентов, которых адвокат защищал по разным делам;
  3. подзащитных, обвиняемых по статьям, максимальный срок по которым не меньше 10 лет.

Задание №3. Работа с представлениями.

Создать представления:

  1. "Эффективность защиты" (дело, ФИО, максимальный срок минус срок по приговору, срок по приговору минус минимальный срок).
  2. "Текущие подзащитные" (все поля отношения "Клиенты").
  3. "Количество несовершеннолетних клиентов по статьям".


Вариант 12. Фрагмент БД гостиницы.

Задание №1. Создание и заполнение отношений.

  1. Отношение "Стоимость мест" ("Класс", "Стоимость места").
  2. Отношение "Номера" (идентификатор, "Класс" (внешний ключ), "Количество мест", "Количество забронированных мест").
  3. Отношение "Постояльцы" (основное):

Содержимое поля

Тип

Длина

Дес.

Примечание

Номер паспорта

С

10

 0

первичный ключ

Занимаемый номер

N

3

0

внешний ключ

ФИО

C

20

 0

обязательное поле

Пол

С

1

 0

по умолчанию – мужской

Организация

С

20

 0

 0

Дата вселения

D

 0

 0

обязательное поле

Дата выселения

D

 0

 0

заполняется при выезде постояльца

Задание №2. Выборка данных.

Создать запрос на выдачу счета на оплату номера.

Создать упорядоченные списки:

  1. свободных номеров (по классу и по номерам) с указанием общего количества мест в номере;
  2. полностью забронированных номеров.

Задание №3. Работа с представлениями.

Создать представления:

  1. "Постояльцы, проживающие в гостинице в данное время" (все поля отношения "Постояльцы").
  2. "Полностью занятые номера" (номер, количество мест).
  3. "Номера со свободными местами" (пол, номер, количество свободных мест).


Вариант 13. Фрагмент БД организации.

Задание №1. Создание и заполнение отношений.

  1. Отношение "Отделы" (идентификатор, "Название отдела").
  2. Отношение "Проекты" (идентификатор, "Название", "Дата начала", "Дата завершения").
  3. Отношение "Сотрудники" (основное):

Содержимое поля

Тип

Длина

Дес.

Примечание

Идентификатор

N

6

0

ключевое поле

ФИО

C

30

0

обязательное поле

Должность

C

20

0

обязательное поле

Пол

C

1

0

по умолчанию – 'ж'

Оклад

N

7

2

0

Номер отдела

N

7

2

внешний ключ

Номер проекта

N

3

0

внешний ключ

Руководитель проекта

L

1

0

по умолчанию – .F.

Задание №2. Выборка данных.

Создать упорядоченные списки:

  1. сотрудников по отделам;
  2. неоконченных проектов (по дате начала) с фамилиями руководителей.

Проверить, что дата начала проекта меньше, чем дата его завершения. Проверить, что у каждого проекта только один начальник.

Задание №3. Работа с представлениями.

Создать представления:

  1. "Сотрудники, работающие в отделе №2" (все поля отношения "Сотрудники").
  2. "Заработная плата" (ФИО, оклад–13%). Руководителю проекта полагается надбавка к окладу (20%).
  3. "Проекты по отделам" (название проекта, ФИО руководителя, название отдела (в котором работает руководитель), количество сотрудников (работающих над данным проектом)).


Вариант 14. Фрагмент БД школы (учителя).

Задание №1. Создание и заполнение отношений.

  1. Отношение "Дисциплины" ("Шифр дисциплины", "Название").
  2. Отношение "Учителя" (идентификатор, "ФИО", "Предмет").
  3. Отношение "Сессия" (основное):

Содержимое поля

Тип

Длина

Дес.

Примечание

Направление

С

15

обязательное поле

Год обучения

N

1

0

обязательное поле

Шифр дисциплины

N

5

2

ключевая комбинация полей

Буква класса

С

2

0

Экзаменатор

N

4

0

идентификатор, внешний ключ

Аудитория

N

3

0

0

Дата

D

0

0

0

Время

T

0

0

0

Задание №2. Выборка данных.

Проверить уникальность комбинации "Аудитория", "Дата", "Время". Определить дисциплины, по которым нет экзаменов.

Создать расписание экзаменов:

  1. для преподавателей двух предметов естественно научного направления;
  2. для одной произвольного класса.

Задание №3. Работа с представлениями.

Создать представления:

  1. "Количество экзаменов" (класс, количество экзаменов).
  2. "Количество экзаменов для направлений естественнонаучных и гуманитарных дисциплин " (название дисциплины, количество экзаменов на естественнонаучном направлении, количество экзаменов на гуманитарном направлении).
  3. "Преподаватели математики" (ФИО преподавателя).

Примечания:

  1. Поля основного отношения с типами и ограничениями целостности приведены в таблице.
  2. Для остальных отношений в скобках перечислены обязательные поля.
  3. Типы полей обозначаются следующим образом: N – числовое, C – символьное, D – дата, T – время, L – логическое (имеющее значения .T. – истина и .F. – ложь).
  4. Для некоторых представлений также в скобках перечислены поля.


Вариант 15. Фрагмент БД отдела кадров.

Задание №1. Создание и заполнение отношений.

  1. Отношение "Отделы" ("Номер отдела", "Название отдела").
  2. Отношение "Сотрудники" (основное):

Содержимое поля

Тип

Длина

Дес.

Примечание

Табельный номер

N

6

0

первичный ключ

ФИО

C

20

 

обязательное поле

Пол

C

1

 

по умолчанию – мужской

Дата рождения

D

 

 

 

Образование

C

20

 

высшее, среднее, начальное

Номер отдела

N

3

0

внешний ключ

Должность

C

20

 

обязательное поле

  1. Отношение "Дети" (внешний ключ к отношению "Сотрудники", "Имя", "Дата рождения").

Задание №2. Выборка данных.

Создать упорядоченные списки:

  1. сотрудников с детьми от 3 до 12 лет включительно;
  2. отделов, в которых нет сотрудников.

Посчитать количество сотрудников с разными уровнями образования.

Задание №3. Работа с представлениями.

Создать представления:

  1. "Отделы и сотрудники" (поля обоих отношений без повторов).
  2. "Бездетные сотрудники" (все поля отношения "Сотрудники").
  3. "Образовательный уровень сотрудников" (уровень образования, количество мужчин, количество женщин).

 


 Курсовая работа

Задание

Разработать реляционную базу данных для автоматизации работы предприятия (организации).

Оформление и защита

Курсовая работа представляется преподавателю в виде отчета на проверку и после допуска защищается в электронном виде на компьютере индивидуально.

Для получения допуска к защите курсовой работы к разработке базы данных необходимо:

o определить предметную область базы данных;

o согласовать с преподавателем тему курсовой работы;

o представить ER-модель (модель Сущность-Отношение).

Файл базы данных должен включать:

o связанные нормализованные таблицы (до нормализации их должно быть не менее трех);

o внешние ключи;

o не менее шести запросов различного типа;

o формы для ввода и анализа данных (в том числе кнопочную форму);

o отчеты для вывода данных на печать;

o макросы для автоматизации работы РБД.

Отчет к курсовой работе представляется преподавателю в распечатанном виде с титульным листом, оглавлением и списком использованной литературы.

Отчет должен включать:

1. подписанную преподавателем ER-модель (с этапами нормализации);

2. текст, содержащий:

o описание предметной области (сфера деятельности фирмы, ее структура, сотрудники фирмы и их функции);

o полный перечень требуемых данных и перечень неповторяющихся данных (атрибутов сущностей и отношений);

3. распечатанную из файла схему данных;

4. краткое описание всех созданных объектов базы данных.

Примеры тем прошлых лет

  1.  музыкальный магазин
  2.  налоговая инспекция
  3.  сеть управления общепитом
  4.  по Агате Кристи
  5.  гипермаркет
  6.  видеопрокат
  7.  группы
  8.  футбол
  9.  ЖКХ
  10.  больницы
  11.  мобильные услуги
  12.  институт
  13.  банк
  14.  киностудия
  15.  дистрибутивы nix
  16.  зоопарк
  17.  ГИБДД
  18.  преступления
  19.  тур.фирма
  20.  муз.группы
  21.  блог
  22.  полет дракона
  23.  инвентаризация офиса
  24.  няни
  25.  MyShows (сайт)
  26.  ролевая игра
  27.  горнолыжные курорты
  28.  антикафе
  29.  астрономия
  30.  nested sets

Рекомендованные материалы

К лабораторным работам:

  1. Курс Интуит "Введение в реляционные базы данных: Информация", Сергей Кузнецов http://www.intuit.ru/studies/courses/74/74/info
  2. Интерактивный учебник "SQL Задачи и решения" части I и II, Сергей Моисеенко
    http://www.sql-tutorial.ru/ru/content.html
  3. Онлайн задачник "Упражнения по SQL" http://www.sql-ex.ru/learn_exercises.php
  4. Вводная статья "Введение в SQL на примере задачи" http://habrahabr.ru/post/123636/

К курсовой

  1.  Создание информационных систем с ALLFusion Modeling Suite Маклаков С.В., хотя бы первые страниц 50




1.  Положения гл 1 2 и 9 не подлежат изменению
2. Экономическая безопасность России в период системных преобразований
3. Контагіозна плевропневмонія великої рогатої худоби
4. Социология Научное и обыденное знание
5. ов классифицируют по составу дисперсионной среды воданефтьгаз и т
6. 1 Использование нецензурной лексики и брани; 1
7. Экономика России в 19 столетии
8. Ф
9. Курсовая работа- Інформаційне забезпечення органів виконавчої влади
10. РЕФЕРАТ дисертації на здобуття наукового ступеня кандидата економічних наук Хар
11. а задержание личный обыск при необходимости ~ освидетельствование подозреваемого;б осмотр места происше
12. Признаки преступления
13.  Область применения 1
14. Программа обучения + тесты по биологии для школы
15. Словарь (лексикон)
16. . Понятие функции теории лидерства
17. Расчеты в гражданском праве
18. ОТиПБД Выполнил-
19. Исследование финансового состояния ООО
20. Тема 4. Звіт про рух грошових коштів