Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка ИОСУ(БД) Казаковцева.doc
Скачиваний:
19
Добавлен:
13.05.2015
Размер:
866.3 Кб
Скачать
      1. Заполнить таблицу примерными значениями данных (не менее 20 деталей, 5 поставщиков, 5 проектов, 20 поставок).

  1. Содержание отчета

Отчет должен содержать описание БД, описание созданных таблиц с указанием наименований полей их типов данных, схему данных, ответы на контрольные вопросы. К отчету прилагается файл MSAccess(*.mdb)

  1. Контрольные вопросы

      1. Что такое первичный ключ?

      2. Что какое внешний ключ?

      3. Что является первичным ключом в таблице «Поставки»?

      4. Что какое каскадное обновление и каскадное удаление полей? Поясните на примере БД «Предприятие»

Лабораторная работа №2. Оператор SELECTязыкаSQL. Формирование запросов к базе данных. Применение агрегатных функций и операции группировки.

    1. Цель работы

Целью лабораторной работы является изучение синтаксиса оператора SELECTязыкаMicrosoftJetSQL, а так же получение навыков по созданию запросов в СУБДAccessдля разработанной в лабораторной работе №2 базы данных «Предприятие».

  1. Создание запросов в СУБДAccess

СУБД Accessпозволяет использовать операторы языкаSQLдля формирования запросов к базе данных. Существует две возможности для создания и редактирования запросов:

- при помощи визуального редактора «Конструктор запросов»

- путем непосредственного ввода текста запроса на языке SQL.

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

Последовательность создания запроса в СУБД Access:

      1. В окне базы данных открыть вкладку «Запросы». Открыть пункт меню «Создание запроса в режиме конструктора».

      1. Закрыть окно «Добавление таблицы»

      1. Нажав правую кнопку мыши на заголовке окна запроса, выбрать пункт меню «Режим SQL»

      1. В появившемся окне ввести текст SQL-запроса.

      1. При закрытии окна редактирования сохранить запрос, задав ему имя.

  1. Порядок выполнения работы

      1. Получить наименования всех поставщиков из определенного города:

SELECTНаименованиеFROMПоставщикиWHEREГород=”<Имя_города>”;

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

SELECTDISTINCTПоставщики.Наименование, Поставщики.городFROMПроекты, Поставщики, ПоставкиWHEREПоставщики.Номер_поставщика=Поставки.Номер_поставщикаAndПроекты.Номер_проекта=Поставки.Номер_проектаAndПроекты.Наименование="<Наименование_проекта>";

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

SELECTДетали.Наименование, Поставки.КоличествоFROMПроекты, Детали, ПоставкиWHEREДетали.Номер_детали=Поставки.Номер_деталиAndПроекты.Номер_проекта=Поставки.Номер_проектаAndПроекты.Наименование="<Наименование_проекта>";

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

SELECT count(*) FROMПроекты, ПоставкиWHERE Проекты.Номер_проекта=Поставки.Номер_проектаAndПроекты.Наименование="<Наименование_проекта>";

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

SELECTsum(Поставки.Количество)

FROMПроекты, Поставки

WHEREПроекты.Номер_проекта=Поставки.Номер_проектаAndПроекты.Наименование="<Наименование_проекта>";

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

SELECTПроекты.Наименование,count(*)

FROMПроекты, Поставки

WHEREПроекты.Номер_проекта=Поставки.Номер_проекта

GROUP BYНаименование;

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

SELECTПоставщики.Наименование,count(*)

FROMПроекты, Поставки, Поставщики

WHEREПроекты.Номер_проекта=Поставки.Номер_проектаAndПоставщики.Номер_поставщика=Поставки.Номер_поставщикаAnd Проекты.Наименование="<Наименование_проекта>"

GROUP BYПоставщики.Наименование;