Главная страница
Навигация по странице:

  • 1 Инфологическая модель данных Инфологическая модель

  • Внешний ключ

  • Порядок работы 1 Разработка инфологической модели БД Спортзал

  • 2 Составление логической модели БД

  • 3 Создание реляционной БД в Access

  • 4 Создание форм для ввода данных в таблицы

  • Результаты сохранить на диске А(З,5")

  • 2.2 Запрос с параметром по нескольким таблицам.

  • 2.4 Запрос на удаление

  • 2.5 Запрос на создание таблицы

  • Раздел 7 Access2003,6лр. Лабораторная работа 1 Создание и редактирование таблицы базы данных Цель работы научиться создавать, заполнять и редактировать


    Скачать 1.22 Mb.
    НазваниеЛабораторная работа 1 Создание и редактирование таблицы базы данных Цель работы научиться создавать, заполнять и редактировать
    АнкорРаздел 7 Access2003,6лр.doc
    Дата19.08.2018
    Размер1.22 Mb.
    Формат файлаdoc
    Имя файлаРаздел 7 Access2003,6лр.doc
    ТипЛабораторная работа
    #23199
    страница5 из 6
    1   2   3   4   5   6

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

    Реляционная база данных

    Цель работы: научиться создавать реляционную базу данных из нескольких таблиц и устанавливать связи между ними

    Содержание работы

    1 Создание инфологической и логической моделей базы данных из пяти таблиц.

    2 Создание реляционной базы данных.

    3 Установка связей между таблицами.

    4 Ввод данных в таблицы посредством форм.
    1 Инфологическая модель данных

    Инфологическая модель реляционной БД – это структурная схема объектов БД – её таблиц и логических связей между таблицами.

    Слово "инфологическая" происходит от лат. "informatio" - разъяснение, сведения и греч. "logikě" - логика, т.е. инфологическая модель означает информационную модель данных, между которыми установлены логические связи. Массивы данных обычно сводятся в таблицы, а таблицы – в базы данных (БД).

    Слово "реляционная" происходит от relation (англ.) – отношение, в математических моделях данных отношения изображают в виде таблиц, поэтому БД, состоящая из двумерных таблиц, называется реляционной. Реляционная БД (РБД)состоит из нескольких таблиц, содержащих массивы данных, между таблицами установлены логические связи, которые и объединяют их в единую базу данных.

    Отношение БД (таблица) состоит из полей (другое название - атрибутов), т.е. столбцов таблицы, и записей (или кортежей), т.е. строк таблицы. Шапка таблицы с названиями полей называется схемой отношения. Связь между таблицами устанавливаются по ключевым атрибутам, которые в Access могут быть трёх типов: простой ключ, составной ключ и внешний ключ.

    Простой ключ или ключевой атрибут (в русифицированной версии Access – первичный ключ или ключевое поле) должен однозначно идентифицировать (определять) любую запись в таблице БД. Например, поле Фамилия не может быть первичным ключом, т.к. в кортежах БД могут быть люди с одной фамилией, поле Корпус может означать и корпус прибора, и воинское подразделение и т.п., поэтому в качестве первичного выбирают уникальные атрибуты – Табельный номер, шифр изделия, Код дисциплины и т.п.

    Составной ключ – это первичный ключ, состоящий из нескольких

    437

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

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

    Одна таблица в БД является основной, родительской, а связанные с ней таблицы – подчинёнными, дочерними, которые, в свою очередь являются основными для своих подчинённых таблиц и т.д. На рис. 1 изображена структура реляционной БД "Факультет", содержащая таблицы Деканат, Кафедры, Преподаватели, Дисциплины, Группы и Студенты .

    связь 1:1

    связь 1:N

    связь N:M

    Рисунок 1 Инфологическая модель реляционной БД "Деканат"

    Между таблицами БД может быть три вида связей:

    • связь "один к одному" , 1:1, например, между деканатом и факультетом, т.к. у факультета – один деканат, и у деканата – один факультет,

    • связь "один ко многим", 1:N, например, между кафедрой и преподавателями, т.к. у кафедры много преподавателей, а у каждого преподавателя – одна кафедра и

    • связь"многие ко многим", N:M, например, между преподавателями


    438

    и дисциплинами, т.к. один преподаватель читает несколько дисциплин, и одна дисциплина может читаться несколькими преподавателями.

    Связи "один к одному" и "один ко многим" легко устанавливаются в Access, а связь "многие ко многим" напрямую не может быть реализована, но фактически она представляет собой две связи типа "один ко многим", поэтому для неё создаётся третья таблица, ключ которой состоит из двух полей, общих для двух таблиц со связью N:M. Таким образом, связь N:M заменяется на ещё одну таблицу, которая связывается с обеими таблицами двумя связями 1:N. В таблице связи, кроме ключевых атрибутов могут быть и другие описательные поля.

    Например, связь N:M между таблицами-объектами ГРУППА и ДИСЦИПЛИНА реализуется с помощью третьей таблицы с именем ГРУП-ДИСЦ, которые связаны с исходными таблицами связями 1:N (рис. 2).
    N M


    1 N N 1

    Рисунок 2 Замена связи N:M на таблицу с двумя связями 1:N

    Таким образом, реализация связи "многие ко многим" добавляет в БД ещё один объект – таблицу связи.

    Логическая модель реляционной БД – это инфологическая БД, в которой каждая её таблица представлена своей схемой – шапкой таблицы и показаны ключевые атрибуты, между которыми установлены логические связи между таблицами.

    Целостность данных

    Целостность данных - это система правил, используемых в СУБД Access для поддержания связей между записями в связанных таблицах, а также обеспечение защиты от случайного удаления или изменения связанных данных:

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

    2 Связанные поля таблиц имеют один тип данных (исключение - поле счетчика может быть связано с числовым полем, если оно имеет тип Длинное целое).

    3 Обе таблицы принадлежат одной базе данных Access.

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

    5 При удалении записи в родительской таблице следует удалить соответствующие записи в дочерней таблице.

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

    Таким образом, ссылочная целостность это совокупность каскадных связей между отдельными таблицами БД. Нарушение хотя бы одной из них делает информацию в БД недостоверной.

    СУБД обычно блокирует действия, которые нарушают целостность связей между таблицами, т.е. ссылочную целостность.
    Пример 1 Создать реляционную БД Спортзал, состоящую из объектов Тренеры (Код тренера, Фамилия, Имя, Отчество, Дата рождения, Должность, Дисциплина, Код дисциплины, Телефон, Зарплата) , Спортсмены (Код спортсмена, Фамилия, Имя, Отчество, № группы, Телефон) и Виды спорта(Код дисциплины, Название дисциплины). Разработать инфологическую и логическую модели БД, структуру таблиц, установить связи. Ввод данных в таблицы выполнить посредством форм.

    Порядок работы

    1 Разработка инфологической модели БД Спортзал, т.е. определение всех таблиц БД и связей между ними.

    По условию, БД должна содержать 3 таблицы: Тренеры, Спортсмены, Виды спорта. Между таблицами Тренеры и Виды спорта действует связь 1:M, между таблицами Виды спорта и Спортсмены – связь N:M. Связь "многие ко многим" между объектами Виды спорта и Спортсмены заменяем на новую таблицу с именем Оценки (Код спортсмена, Код дисциплины, Оценки) и двумя связями типа 1:N.

    Всего в БД Кафедра получается 4 таблицы и 3 связи типа 1:N, её инфологическая модель имеет вид (рис. 3):

    1:N

    1:N 1:N

    Рисунок 3 Инфологическая модель БД Спортзал
    440

    2 Составление логической модели БД, она должна показывать схему(структуру) каждой таблицы и связанные ключевые атрибуты (рис. 4).

    Назначим ключевые атрибуты:

    • в таблице Спортсмены - Код спортсмена,

    • в таблице Тренеры: первичный ключ – Код тренера (для связи с внешними структурами, например, с Тренерским советом), внешний ключ - Код дисциплины,

    • в таблице Виды спорта - Код дисциплины.

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


    Рисунок 4 Логическая модель БД Спортзал
    3 Создание реляционной БД в Access.

    3.1 Создание РБД Спортзал:

      • загрузить Access, в появившемся окне выбрать пункт Новая база данных, затем щелкнуть по кнопке ОК;

      • в окне Файл новой базы данных задайте имя (пункт Имя файла) и выберите папку (пункт Папка), где ваша база будет находиться. По умолчанию Access предлагает имя базы dbl, а тип файла — Базы данных Access. Имя задайте Спортзал, а тип файла оставьте прежним;

      • щелкнуть по кнопке Создать.

    3.2 Создать структуру таблицы Тренеры.Для этого:


    441

    • вается окно таблицы в режиме конструктора, в котором следует определить поля таблицы;

    • определите поля таблицы в соответствии с табл. 1;

    • в качестве ключевого поля задайте «Код тренера». Для этого щелкните по полю «Код тренера» и по кнопке на панели инструментов или выполните команду Правка\ Ключевое поле;

    • закройте таблицу, задав ей имя Тренеры

    Таблица 1 Тренеры.

    Имя поля

    Тип данных

    Размер поля

    Код тренера

    Числовой

    Целое

    Фамилия

    Текстовый

    15

    Имя

    Текстовый

    12

    Отчество

    Текстовый

    15

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

    Числовой

    Целое

    Должность

    Текстовый

    15

    Дисциплина

    Текстовый

    15

    Код дисциплины

    Числовой

    Целое

    Телефон

    Числовой

    Целое

    Зарплата

    Денежный




    Заполнение таблицы данными будет сделано в режиме формы.

    3.3 Создать структуру таблицы Виды спортааналогично п. 3.2 в соответствии с табл. 2.

    Таблица 2 Виды спорта

    Имя поля

    Тип данных

    Размер поля

    Код дисциплины

    Числовой

    Целое

    Название дисциплины

    Текстовый

    30


    В качестве ключевого поля задайте «Код дисциплины». Заполняться эта таблица будет также в режиме формы.

    3.4 Создать структуру таблицы Спортсменыаналогично п. 3.2 в соответствии с табл. 3.

    Таблица 3 Спортсмены

    Имя поля

    Тип данных

    Размер

    1

    2

    3

    Код спортсмена

    Числовой

    Целое

    Фамилия

    Текстовый

    15


    442

    1

    2

    3

    Имя

    Текстовый

    15

    Отчество

    Числовой

    Целое

    № группы

    Числовой

    Целое

    Телефон

    Числовой

    Целое


    В качестве ключевого поля задайте "Код спортсмена". Заполняться эта таблица будет также в режиме формы.

    3.5 Создайте структуру таблицы Оценкианалогично п. 3.2 в соответствии с табл. 4.

    Таблица 4 Оценки


    Имя поля

    Тип данных

    Размер поля

    Код спортсмена

    Числовой

    Целое

    Код дисциплины

    Числовой

    Целое

    Оценки

    Числовой

    Целое



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

    3.6 Разработать схему данных, т.е. создать связи между таблицами. Для этого:

      • щелкните по кнопке на панели инструментов или выполните команду Сервис\ Схема данных. На экране появится окно «Схема данных»;

      • щелкните по кнопке на панели инструментов или выполните команду Связи\ Добавить таблицу;

      • в появившемся окне будет выделено название одной таблицы. Щелкните по кнопке Добавить;

      • переведите выделение на имя следующей таблицы и щелкните по кнопке Добавить. Аналогично добавьте оставшиеся две таблицы;

      • закройте окно, щелкнув по кнопке 3акрыть;

    Создайте связь между таблицами Тренерыи Виды спорта.Дляэтого

    подведите курсор мыши к полю Код дисциплины в таблице Виды спорта,щелкните левой кнопкой мыши и, не отпуская ее, перетащите курсор на поле Код дисциплины в таблицу Тренеры, а затем отпустите кнопку мыши. На экране откроется окно Изменение связей;

      • установите флажок ("галочку") в свойстве Обеспечение целостности данных, щелкнув по нему;

      • установите флажок в свойстве Каскадное обновление связанных полей и Каскадное удаление связанных записей',

    Задание каскадного обновления связанных полей и каскадного уда-
    443

    ления связанных записей позволяет отредактировать записи только в таблице Виды спорта,а в таблице Тренерыэти данные изменятся автоматически. Например, если удалить из таблицы Виды спорта один предмет, то в таблице Тренерыудалятся все строки, связан­ные с этим предметом.

    • щелкните по кнопке Создать. Связь будет создана;

    • аналогично создайте связи между другими таблицами БД согласно рис. 4. Результат представлен на рис. 5;

    • закройте окно схемы данных, ответив ДАна вопрос о сохранении макета.


    Рисунок 5 Структурная схема реляционной БД Спортзал

    4 Создание форм для ввода данных в таблицы

    4.1 Для создания формы Тренеры:

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

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

    4.2 Заполните данными, приведенными в табл. 5, таблицу Тренерыпосредством формы.Закройте форму, задав ей имя Тренеры.

    Таблица 5 Тренеры

    Код

    Фамилия

    Имя









    Код дисциплины

    Должность

    Зарплата

    1

    2

    3

    4

    5

    6

    7

    8

    9

    Лапин

    Петр

    ……

    ……

    2

    Старший тренер

    5890р.

    12

    Комов

    Иван

    ……

    ……

    3

    Главный

    тренер

    7200р.



    444

    1

    2

    3

    4

    5

    6

    7

    8

    13

    Сомов

    Сергей





    2

    Тренер

    5000р.

    21

    Попов

    Виктор

    ……

    ……

    1

    Старший тренер

    5890р.

    23

    Васин

    Лука





    2

    Тренер

    5000р.

    4.3 Создайте форму Виды спорта аналогично п. 4. 1.

    Заполните данными, приведенными в табл. 6 таблицу Виды спортапосредством формы и закройте форму, задав ей имя Виды спорта.

    Таблица 6 Виды спорта

    Код дисциплины

    Название дисциплины

    1

    Бокс

    2

    Борьба

    3

    Плавание

    4.4 Создайте форму Спортсменыаналогично п. 4.1.

    Заполните данными, приведенными в табл. 7, таблицу Спортсменыпосредством формы, закройте форму, задав ей имя Спортсмены

    Таблица 7 Спортсмены

    Код спортсмена

    Фамилия

    Имя

    Отчество

    № группы

    Телефон

    1

    Азаров

    Петр

    Сергеевич

    110

    2322

    2

    Борисов

    Сергей

    Петрович

    110

    2313

    3

    Крылов

    Одег

    Данилович

    122

    2233

    4

    Соколов

    Иван

    Ильич

    122

    2123

    4.5 Создайте форму Преп-Дисц аналогично п. 4. 1.

    Заполните данными, приведенными в табл. 8 таблицу Оценкипо-

    средством формы и закройте форму, задав ей имя Оценки.

    Таблица 8 Оценки

    Код спортсмена

    Код дисциплины

    Оценки

    1

    2

    3

    1

    1

    4

    2

    1

    5

    3

    1

    4

    4

    1

    5

    1

    2

    5

    2

    2

    3

    3

    2

    4

    4

    2

    4

    1

    3

    3



    445

    1

    2

    3

    2

    3

    3

    3

    3

    4

    4

    3

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

    1 Что такое инфологическая модель БД?

    2 Какие ключи используются для задания связи таблиц?

    3 Какие есть виды связей в реляционной БД?

    4 Что означает целостность данных, как она устанавливается?

    5 Как устанавливаются связи между таблицами БД, что такое схема БД?

    6 Как реализуется связь вида "многие ко многим"?

    7 Как создать форму и ввести через неё данные в таблицу БД?

    Задание (Номер варианта – номер компьютера в аудитории)


    1 Создать реляционную БД содержащую несколько таблиц согласно варианту задания. Вид связи между первой и второй таблицами – "один ко многим", между второй и третьей – "многие ко многим". Разработать инфологическую и логическую модели БД, структуру таблиц, назначить ключевые поля, установить связи. Разработать формы для заполнения всех таблиц своими данными– по аналогии с примером 1.

    Таблицу связи назвать по именам соединяемых таблиц (например, для таблиц "Виды спорта" и "Спортсмены" название промежуточной таблицы: "Виды спорта-Спортсмены").

    2 Изменить данные в первой таблице БД (с помощью запроса или формы), проверить их изменение в подчинённых таблицах.

    Результаты сохранить на диске А(З,5")

    Варианты задания

    № вар

    Название БД, в скобках – названия таблиц БД

    1

    Факультет(Кафедра, Преподаватели, Дисциплины)

    2

    Токарный цех (Начальник, Станки, Токари)

    3

    Аэропорт (Диспетчер, Рейсы, Тип самолёта)

    4

    Автовокзал (Диспетчер, Маршруты, Марки автомашин)

    5

    Ж-д вокзал(Диспетчер, №№ поездов, Типы вагонов

    6

    Морской вокзал(Диспетчер, Рейсы, Виды судов)

    7

    Библиотека(Заведующий, Отделы, Читатели)

    8

    Студгородок (Директор, №№ общежитий, №№ групп)

    9

    Школа (Директор, Учителя, Классы)

    10

    Автобаза (Директор, Водители, Грузовики)

    446

    Содержание отчёта

    1 Название работы.

    2 Цель и содержание работы.

    3 Логическая модель реляционной БД

    4 Письменные ответы на контрольные вопросы.

    5 ВЫВОДЫ.

    447

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

    Сложные запросы в Access.

    Цель работы: научиться создавать запросы с параметрами, освоить технологию создания различных запросов

    Содержание работы

    1 Разработка запроса с параметрами по одной и нескольким таблицам

    2 Разработка перекрёстного запроса.

    3 Разработка запроса на изменение
    1 Виды запросов в Access
    В лабораторной работе №3 "Запросы в Access" были рассмотрены Простой запрос, запрос Повторяющиеся записи и запрос Записи без подчинения. Они являются достаточно простыми как по созданию, так и по выполняемым операциям. В MS Access также широко применяются более сложные виды запросов, к которым относятся Перекрёстный запрос и Запросы на изменение.

    Перекрестный запрос отображает результаты статистических расчетов (таких, как суммы, количество записей, средние значения), выполненных по данным из одного поля таблицы. Эти результаты группируются по двум наборам данных, один из которых расположен в левом столбце таблицы, во второй – в верхней строке. Например, если надо узнать средний стаж работы доцентов и профессоров на разных кафедрах (на основе таблицы Преподаватели), то используется перекрестный запрос, в котором заголовками строк будут служить должности, заголовками столбцов - названия кафедр, а в ячейках будут рассчитаны средние значения стажа преподавателей.

    Запрос на изменение - это запрос, который за одну операцию вносит изменения в несколько записей. Существует четыре типа запросов на изменение: на удаление, обновление и добавление записей, а также на создание таблицы.

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

    • Запрос на обновление записей вносит общие изменения в группу записей одной или нескольких таблиц. Например, если на10% увеличилась заработная плата сотрудников, то запрос на обновление может быстро внести эти изменения в таблицу Преподаватели.

    • Запрос на добавление добавляет группу записей из одной или не-.


    448

    скольких таблиц в конец одной или нескольких таблиц

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

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

    Запрос SQL – это запрос, создаваемый при помощи инструкций SQL. Этот тип запросов довольно сложен для начинающих пользователей и используется обычно опытными пользователями, имеющими навыки программирования и общения с серверами баз данных, поэтому в работе не рассматривается.
    2 Разработка запросов

    2.1 Запрос с параметром по одной таблице.

    Для создания запросов с параметром Должность тренера.

    2.1.1 Сначала создаётся простой запрос:

    • Откройте объект Запросы, щелкните по кнопке Создать;

    • В появившемся окне выберите Простой запрос и щелкните по кнопке OK;

    • В появившемся окне в строке Таблицы и запросы выберите из списка таблицу Тренеры;

    • Перенесите все поля из окна Доступные поля в окно Выбранные поля, щелкнув по кнопке [>>];

    • Нажмите кнопку Далее. В следующем окне мастера запросов оставьте подробный отчёт (чёрная точка в кружке), еще раз щелкните по кнопке Далее;

    • В появившемся окне введите имя запроса Должность;

    • Нажмите кнопку Готово. На экране появится таблица с данными запроса – полным списком тренеров.

    2.1.2 Теперь на базе этого простого запроса нужно создать запрос с параметром Должность. Для этого перейдите в режим конструктора;

    • В строке Условия отбора для поля Должность введите фразу (квадратные скобки тоже вводить): [ Введите должность ] ;

    • Выполните запрос, щелкнув по кнопке [!] на панели инструментов, или выполните команду Запрос\ Запуск;

    • В появившемся окне введите Тренер (можно со строчной буквы) и щелкните по кнопке ОК. На экране появится таблица с данными о всех тренерах таблицы Тренеры. Аналогично запросить вывод Старших тренеров и т.д.


    449

    • Сохраните запрос и закройте таблицу запроса.

    2.2 Запрос с параметром по нескольким таблицам.

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

    2.2.1 Сначала создаётся простой запрос по таблицам Тренеры и Виды спорта:

        • Выделив в окне БД объект Запросы, щелкните по кнопке Создать;

        • Выберите Простой запрос и щелкните по кнопке ОК; Выберите таблицу Тренеры и перенесите поля Фамилия, Имя, Отчество, Должность, Зарплата в окно Выделенные поля.

        • В таблице Виды спорта перенесите поле Название дисциплины;

    Тем самым сформировано шесть полей запроса - они связаны между собой посредством схемы данных;

        • Нажмите кнопку Далее, затем в следующем окне снова щелкните по кнопке Далее;

        • В появившемся окне введите имя запроса Фамилия-Дисциплина, затем щелкните в кружке Изменить макет запроса (в ней появится черная точка) - это позволит сразу перейти в режим конструктора;

        • Нажмите кнопку Готово;

        • 2.2.2 Вводим параметры запроса:

        • В строке Условия отбора для поля Название дисциплины введите фразу: [Введите название дисциплины], для поля Фамилия – фразу [Введите фамилию], скобки тоже вводить;

        • Выполните запрос (через Запрос\ Запуск или [!]);

        • В первом появившемся окне введите Бокс, щелкните по кнопке ОК, во втором – введите Лапин, щелкните по кнопке ОК. На экране появится таблица со строкой (табл. 1):

    Таблица 1

    Название дисциплины

    Фамилия

    Имя

    Отчество

    Должность

    Зарплата

    Бокс

    Лапин

    Илья

    Фомич

    Старший тренер

    5890р.




        • Сохраните запрос и закройте таблицу запроса.


    450
    2.3 Перекрестный запрос.

    Создадим запрос о средней зарплате тренеров по дисциплинам. Такой запрос строится на основе одной таблицы или одного запроса, в связи чем надо сначала сформировать запрос, в котором были бы поля Должность, Название дисциплины и Зарплата.

    2.3.1 Создаём простой запрос с этими полями из таблиц Виды спорта и Тренеры, вводим имя запроса Зарплата тренеров, сохраняем запрос и закрываем его таблицу – см. п. 2.1..

    2.3.2 Создание перекрестного запроса. Для этого:

    • На вкладке Запросы щелкните по кнопке Создать;

    • Выберите Перекрестный запрос и щелкните по кнопке ОК;

    • Щелкните по ячейки Запросы, выберите Зарплата тренеров и щелкните по кнопке Далее;

    • Выберите поле Название дисциплины и щелкните по кнопке Далее;

    • Из полей Должность и Зарплата выделите поле Зарплата, нажмите кнопку Далее;

    • Выберите функцию Среднее и щелкните по кнопке Далее;

    • Введите название запроса Средняя зарплата и нажмите кнопку Готово. Откроется таблица перекрестного запроса. Обратите внимание на то , что Access создает еще итоговое значение средних оценок по дисциплинам;

    • Закройте таблицу запроса.


    2.4 Запрос на удаление

    Создать простой запрос на базе таблицы Спортсмены с полями Фамилия, Имя, Отчество, введите имя запроса Отчисление,

    • Щелкните по ячейке Изменение структуры запроса;

    • Щелкните по кнопке Готово;

    • В строке Условия отбора введите: в поле Фамилия - Киреев в поле Отчество – Валерьевич;

    • Откройте пункт меню Запрос и выберите Удаление;

    • Просмотрите удаляемую запись, щёлкнув по кнопке или выполните команду Вид\ Режим таблицы;

    • Если удаляемый преподаватель выбран правильно, то перейдите в режим конструктора и выполните запрос. Если условия отбора сделаны неправильно, измените их;

    • Закройте запрос ;

    • Откройте таблицу Спортсмены и удостоверьтесь в удалении всех полей записи о Кирееве;

    • Закройте таблицу.


    451

    2.5 Запрос на создание таблицы

    Также выполняются на базе простого запроса из режима конструктора с помощью команд меню Запрос\ Создание таблицы. После выбора команды меню Вид\Групповые операции в окне конструктора в строке Групповые операции для каждого поля можно раскрыть список операций и выбрать нужную функцию, например, Сумма. Перед созданием таблицы с помощью запроса необходимо иметь в БД одну или несколько таблиц, из полей которых будет составляться запрос, а затем создаваться новая таблица. В запросе можно выполнить некоторые математические операции над сгруппированными данными (Группировка, sum, ave, min, max, count, stdev, var, first, last, Выражение, Условие – соответственно объединение в группы, сумма, среднее, минимум, максимум, количество, стандартное отклонение, вариация, добавление математического выражения, условия), а затем по нему создать таблицу.

    Для разработки запроса на создание таблицы введём в БД ещё одну таблицу (таблица 2), по которой и будет создаваться запрос:

    Таблица 2 Абитуриент

    Фамилия И.О.

    Дисциплина

    Оценка

    Басов В.В.

    Математика

    4

    Басов В.В.

    Русский

    5

    Басов В.В.

    Физика

    4

    Лыков А.А.

    Математика

    4

    Лыков А.А.

    Русский

    5

    Лыков А.А.

    Физика

    5

    Селин Н.Н.

    Математика

    4

    Селин Н.Н.

    Русский

    4

    Селин Н.Н.

    Физика

    3

    В таблице приведены данные Единого госэкзамена (ЕГЭ) при поступлении в ВУЗ. Создадим запрос абитуриентов, поступивших в ВУЗ при проходном балле, равном 13. Для этого в поле Оценка данные должны быть сгруппированы по каждому абитуриенту и для каждой группы вычислена сумма баллов. Если она больше или равна 13 баллам, данный абитуриент включается в создаваемую таблицу Результаты ЕГЭ.

    2.5.1 Создадим таблицу из окна БД (выделить объект Таблицы, нажать клавишу Создать, выбрать режим Конструктор, ввести названия полей согласно табл. 3, сохранить её под именем Абитуриент (ключи не задавать, т.к. она не будет связываться с другими объектами БД), перейти в режим Таблица и заполнить её данными из табл. 2.
    452

    Таблица 3

    Фамилия ИО

    Текстовый

    15

    Дисциплина

    Текстовый

    15

    Оценка

    Числовой

    Целое

    2.5.2 Создать Простой запрос по одной таблице, в который включены все поля – см. п. 2.1.1, введите имя запроса ЕГЭ, нажмите Готово,

    • Для выполнения операций не над одной ячейкой, а над группой выполнить команду Вид\Групповые операции (или щелкнуть по кнопке [∑] на панели Стандартная);

    • В строке Групповая операция поля Оценка щелкнуть по ячейке Группировка. Открыть раскрывающийся список и выбрать функцию Sum;

    • В строке Условие отбора ввести 13;

    • Просмотреть создаваемую таблицу командой Вид\ Режим таблицы или кнопкой , перейти в режим Конструктор;

    • Войти в меню Запрос, выполнить команду Создание таблицы;

    • Ввести имя таблицы Результаты ЕГЭ, щелкнуть ОК, подтвердить сохранение таблицы, созданной по запросу.

    • В окне БД открыть объект Таблицы, щелкнуть по таблице Результаты ЕГЭ и убедиться в правильности данных в таблице. Закройте таблицу.

    Таким образом, по таблице Абитуриент с помощью запроса ЕГЭ создана таблица Результаты ЕГЭ.

    Аналогично создаётся запрос на добавление данных в конец одной или нескольких таблиц (командой Запрос\Добавление, при этом указывается имя таблицы для вставки новых данных из запроса
    Контрольные вопросы

    1 Как создать запрос с параметром по одной таблице БД?

    2 Как создать запрос с параметром по нескольким таблицам БД?

    3 Как создать перекрёстный запрос? Выбор поля для пересечения

    4 Какие существуют виды запросов на изменение?

    5 Как создать запрос на удаление данных, ввод условия отбора?

    6 Как создать запрос на обновление данных, ввод условия отбора?

    7 Как создать запрос на добавление данных и создание новой таблицы БД?

    8 Какие функции относятся к групповым операциям?


    453

    Задание

    1 Создать все виды запросов по таблицам БД своего варианта из л.р. №4 "Реляционная БД". Для разработки запроса на создание использовать одну из таблиц БД своего варианта из л.р. №4 или ввести в Access новую таблицу (аналогичную табл. 2 Абитуриент) со своими данными.

    2 Самостоятельно: Разработать запрос на добавление и с его помощью добавить данные в таблицу 3 своего варианта из л.р. №4. Данные взять из таблицы 1.

    3 Результаты запросов сохранить на своей дискете (5 запросов и таблица для запроса на создание).

    Содержание отчёта

    1. Название работы.

    2. Цель и содержание работы.

    3. Письменные ответы на контрольные вопросы.

    4. Выводы.


    Результаты работы – созданные документы сохранит на дискете.

    454

    Лабораторная работа № 6

    1   2   3   4   5   6


    написать администратору сайта