Теоретические аспекты разработки реляционной базы данных 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Теоретические аспекты разработки реляционной базы данных



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

Система баз данных поддерживает в памяти ЭВМ модель предметной области. Однако результат моделирования зависит не только от предметной области, но и от используемой СУБД, поскольку каждая система предоставляет свой инструментарий для отображения предметной области. Этот инструментарий принято называть моделью данных. В то же время результат отображения предметной области в терминах модели данных называется моделью баз данных. Модель данных определяется тремя компонентами:

¨ допустимой организацией данных;

¨ ограничениями целостности (семантической),

¨ множеством операций, допустимых над объектами модели данных.

Допустимая организация данных определяется разнообразием и количеством типов объектов модели данных, ограничениями на структуру данных.

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

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

Организация данных

Слово «реляционная» происходит от английского relation – отношение. Отношение –математическое понятие, но в терминологии моделей данных отношения удобно изображать в виде таблицы. При этом строки таблицы соответствуют кортежам отношения, а столбцы – атрибутам. Атрибут, значения которого однозначно идентифицируют кортежи, называется ключом(простым ключом), т.е. столбец(поле), у которого данные в строках уникальны (не повторяются), может быть определен, как ключ. В некоторых отношениях кортежи идентифицируются конкатенацией (объединением) нескольких атрибутов Тогда говорят, что отношение имеет составной ключ. Это означает, что данные в строках каждого из столбцов составного ключа могут повторяться, но комбинация данных каждой строки этих столбцов является уникальной. Например, в таблице СТУДЕНТЫ есть столбцы ФАМИЛИЯ и ГОД РОЖДЕНИЯ. В каждом из столбцов есть некоторые повторяющиеся данные, т.е. одинаковые фамилии и одинаковые года рождения. Но если студенты, имеющие одинаковые фамилии, имеют разные года рождения, то эти столбцы можно использовать в качестве составного ключа.

В Access можно выделить три типа ключевых полей:

¨ простой ключ,

¨ составной ключ

¨ и счетчик.

Поле счетчика содержит номера строк и Access обычно предлагает его вам в качестве ключа, если вы не выбрали другое ключевое поле.

Совет Понятие ключа имеет важное значение в реляционных базах данных. Задание ключевых полей в таблицах не только позволит защитить базу от ввода неправильных значений и сохранить ее целостность, но и ускорит поиск информации в больших по объему базах. Поэтому, когда Access предлагает вам задать ключевое поле, не отказывайтесь сразу от этого, а подумайте, какое поле может содержать неповторяющиеся данные и все-таки задайте ключ для таблицы. Конечно, можно всегда отказываться от задания ключевых полей (так, казалось бы, проще и понятней), но тем самым вы лишите себя многих достоинств реляционной базы данных.

Одно из важнейших достоинств реляционных баз данных состоит в том, что вы можете хранить логически сгруппированные данные в разных таблицах и задавать связи между ними, объединяя их в единую базу. Для задания связи таблицы должны иметь поля с одинаковыми именами или хотя бы с одинаковыми форматами данных. Связь между таблицами устанавливает отношения между совпадающими значениями в этих полях. Такая организация данных позволяет уменьшить избыточность хранимых данных, упрощает их ввод и организацию запросов и отчетов. Поясним это на примере. Допустим, вам в базе надо хранить данные о студентах (фамилия, изучаемая дисциплина) и преподавателях (фамилия, номер кафедры, ученая степень, преподаваемая дисциплина). Если хранить данные в одной таблице, то в строке с фамилией каждого студента, изучающего конкретную дисциплину, будут храниться все атрибуты преподавателя, читающего эту дисциплину. Это же огромная избыточность данных. А если хранить данные о студенте в одной таблице, о преподавателе – в другой и установить связь между полями «читаемая дисциплина» – «изучаемая дисциплина» (фактически это одинаковые поля), то избыточность хранимых данных многократно уменьшится без ущерба для логической организации информации.

В Access можно задать три вида связей между таблицами: «один-ко-многим», «многие-ко-многим» и «один-к-одному».

Связь «один-ко-многим» является наиболее часто используемым типом связи между таблицами. В такой связи каждой записи в таблице A могут соответствовать несколько записей в таблице B (эти записи называют внешними ключами), а запись в таблице B не может иметь более одной соответствующей ей записи в таблице A.

При связи «многие-ко-многим» одной записи в таблице A могут соответствовать несколько записей в таблице B, а одной записи в таблице B – несколько записей в таблице A. Такая схема реализуется только с помощью третьей (связующей) таблицы, ключ которой состоит из по крайней мере двух полей, одно из которых является общим с таблицей А, а другое – общим с таблицей В.

При связи «один-к-одному» запись в таблице A может иметь не более одной связанной записи в таблице B и наоборот. Этот тип связи используют не очень часто, поскольку такие данные могут быть помещены в одну таблицу. Связь с отношением «один-к-одному» используют для разделения очень широких таблиц, для отделения части таблицы по соображениям защиты, а также для сохранения сведений, относящихся к подмножеству записей в главной таблице.

Тип создаваемой связи зависит от полей, для которых определяется связь:

· связь «один-ко-многим» создается в том случае, когда только одно из полей является ключевым или имеет уникальный индекс.;

· связь «один-к-одному» создается в том случае, когда оба связываемых поля являются ключевыми или имеют уникальные индексы.

· связь «многие-ко-многим» фактически является двумя связями с отношением «один-ко-многим» через третью таблицу, ключ которой состоит из по крайней мере двух полей, которые являются общими полями с ключами в двух других таблицах.

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

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

¨ связанное поле главной таблицы является ключевым полем или имеет уникальный индекс;

¨ ·связанные поля имеют один тип данных. Здесь существует исключение. Поле счетчика может быть связано с числовым полем, если в последнем в свойстве Размер поля указано значение «Длинное целое»;

¨ ·обе таблицы принадлежат одной базе данных Access. Если таблицы являются связанными, то они должны быть таблицами Access. Для установки целостности данных база данных, в которой находятся таблицы, должна быть открыта. Для связанных таблиц из баз данных других форматов установить целостность данных невозможно.

ПОСТАНОВКА ЗАДАЧИ

Требуется разработать базу данных ДЕКАНАТ, содержащую четыре таблицы: СТУДЕНТЫ, ПРЕПОДАВАТЕЛИ, ДИСЦИПЛИНЫ, ОЦЕНКИ. Таблица СТУДЕНТЫ должна содержать следующие поля:

· Код студента;

· Фамилия

· имя;

· отчество;

· Номер группы;

· Адрес;

· Телефон;

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

· Медалист

Таблица ПРЕПОДАВАТЕЛИ должна содержать следующие поля:

· Код преподавателя;

· Фамилия;

· Имя;

· Отчество;

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

· Должность;

· Стаж;

· Телефон;

Таблица ДИСЦИПЛИНЫ должна содержать следующие поля:

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

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

· Код преподавателя;

· Номер семестра;

· Экзамен.

Таблица ОЦЕНКИ должна содержать следующие поля:

· Код студента;

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

· Номер семестра;

· Оценка.

Необходимо разработать формы для ввода данных во все таблицы.

Необходимо создать следующие запросы:

· Студенты заданной группы;

· Оценки студентов заданной группы по заданной дисциплине;

· Перекрестный запрос: средний балл групп по дисциплинам;

· Увеличение на 10% зарплаты тех преподавателей, кто получает менее 2000 руб.;

· Удаление отчисленных студентов;(создание архива)

· Создание базы данных отличников;

Все запросы должны быть оформлены в виде форм.

Разработать сложную форму.

Необходимо разработать итоговый отчет по дисциплинам, группам и среднему баллу групп по данным дисциплинам.

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


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

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

1. Создайте базу данных ДЕКАНАТ, выполнив следующие действия:

· загрузите Access, в появившемся окне выберите пункт НОВАЯ БАЗА ДАННЫХ, затем нажмите кнопку OK;

· в окне ФАЙЛ НОВОЙ БАЗЫ ДАННЫХ задайте имя (пункт ИМЯ ФАЙЛА) и выберите папку (пункт ПАПКА), где ваша база будет находиться. По умолчанию Access предлагает вам имя базы db1, а тип файла – БАЗЫ ДАННЫХ ACCESS. Имя базы данных задайте ДЕКАНАТ., тип файла оставьте прежним, т.к. другие типы файлов нужны в специальных случаях; (Выбор диска для хранения БД, уточняется у преподавателя)

· нажмите кнопку СОЗДАТЬ.

2. Создайте структуру таблицы ПРЕПОДАВАТЕЛИ. Для этого:

· в окне базы данных выберите вкладку Таблицы, а затем нажмите кнопку Создать;

· в окне НОВАЯ таблицА выберите пункт КОНСТРУКТОР и нажмите кнопку OK. В результате проделанных операций открывается окно таблицы в режиме конструктора, в котором следует определить поля таблицы.

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

Таблица 1

Имя поля Тип данных Размер поля
Код преподавателя Числовой целое
Фамилия Текстовый  
Имя Текстовый  
Отчество Текстовый  
Дата рождения Дата/время (маска)
Должность Мастер подстановок 25 поле со списком
Стаж Числовой Целое(условие на значение >0, вывод соответствующего сообщения об ошибке)
Кафедра Текстовый  
Телефон Текстовый 9 (маска)
Зарплата Денежный  

 

¨ При определении поля ДАТА РОЖДЕНИЯ используем маску для удобного ввода даты (т.е. в датах точки будут вводится автоматически). Для этого в Свойства полей на вкладке Общие установите курсор на поле маска, справа появится кнопка с тремя точками – нажмите на неё. В появившемся окне создания масок выбирайте краткий формат даты.

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

¨ В поле стаж в общих свойствах поля установите условие на значение >0, сообщение об ошибке напишите - стаж должен быть больше 0.

¨ В поле телефон наберите маску для ввода 999-99-99, которая позволит не набирать тире в номере телефона при вводе в поле.(подробнее о маске см. help)

¨ В качестве ключевого задайте поле КОД ПРЕПОДАВАТЕЛЯ.

¨ Закройте таблицу ПРЕПОДАВАТЕЛИ в режиме конструктора. Откройте таблицу ПРЕПОДАВАТЕЛИ и введите первую строку из таблицы 5. При вводе стажа преподавателя введите отрицательный стаж –17.

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

3. Таблица СТУДЕНТ будет импортирована из таблицы EXCEL (студент.xls местонахождение таблицы узнать у преподавателя)

¨ Меню Файл/Внешние данные/Импорт

¨ Отредактируйте созданную таблицу в режиме конструктора

 

Таблица 2

Имя поля Тип данных Размер поля
Код студента Числовой целое
Фамилия Текстовый  
Имя Текстовый  
Отчество Текстовый  
Номер группы Числовой Целое
Адрес Текстовый  
Телефон Текстовый 9 (маска)
Медалист Текстовый 4 Поле со списком(Да/Нет) по умолчанию нет

· В качестве ключевого задайте поле КОД СТУДЕНТА. Для этого щелкните по полю КОД СТУДЕНТА и выполните команду ПРАВКАÞКЛЮЧЕВОЕ ПОЛЕ;

· Для удобства ввода телефона задайте маску см. поле телефон таблицы ПРЕПОДАВАТЕЛИ

· В поле Медалист создайте поле со списком без ввода новых значений, а также задайте значение по умолчанию “нет” (ковычки обязательны)

4. Создайте структуру таблицы ДИСЦИПЛИНЫ аналогично п.2 в соответствии с табл. 3.

Таблица 3

Имя поля Тип данных Размер поля
Код дисциплины Числовой целое
Название дисциплины Текстовый  
Номер семестра Числовой целое
Код преподавателя Числовой Целое (мастер подстановок)
Экзамен Текстовый 4 (поле со списком экз/зач)

¨ В качестве ключевого задайте поле КОД ДИСЦИПЛИНЫ.

¨ Поле код преподавателя будет заполнятся при помощи мастера подстановок из таблицы ПРЕПОДАВАТЕЛИ. Из доступных полей таблицы ПРЕПОДАВАТЕЛИ выберите, код преподавателя фамилия, имя, отчество, скройте ключевое поле. После работы мастера при заполнении поля код преподавателя таблицы будут отображатся ФИО преподавателя для выбора, но в таблице ДИСЦИПЛИНЫ поле код преподавателя будет оставаться числовым целым

¨ Поле экзамен заполняйте при помощи поля со списком двух значений Экз/Зач

¨ Закройте таблицу ДИСЦИПЛИНЫ в режиме конструктора. Откройте таблицу ДИСЦИПЛИНЫ и введите первую строку из таблицы 7. При вводе кода преподавателя выбирите Истомина Ремира Евгеньевича.

¨ Оставшаяся часть таблицы будет заполняться в режиме формы

.

5. Таблица ОЦЕНКИ будет импортирована из базы данных ОЦЕНКИ (оценки.mdb местонахождение файла узнать у преподавателя)

¨ Меню Файл/Внешние данные/Импорт

6. Отредактируйте структуру таблицы ОЦЕНКИ аналогично в соответствии с табл. 4.

Таблица 4

Имя поля Тип данных Размер поля
Код студента Числовой целое
Код дисциплины Числовой Целое
Номер семестра Числовой Целое
Оценки Числовой Байт

¨ ключ будет составной: код студента, код дисциплины, номер семестра.
(в режиме конструктора выделите три поля и задайте ключ)

¨ Эта таблица уже заполнена.

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

· Выполните команду СЕРВИСÞСХЕМА ДАННЫХ. На экране появится окно СХЕМА ДАННЫХ;

· Выполните команду СВЯЗИÞДОБАВИТЬ ТАБЛИЦУ;

· В появившемся окне будет выделено название одной таблицы. Нажмите кнопку ДОБАВИТЬ;

· Переведите выделение на имя следующей таблицы и нажмите кнопку ДОБАВИТЬ. Аналогично добавьте оставшиеся две таблицы;

· Закройте окно нажав кнопку ЗАКРЫТЬ;

· Создайте связь между таблицами ДИСЦИПЛИНЫ и ОЦЕНКИ. Для этого подведите курсор мыши к полю КОД ДИСЦИПЛИНЫ в таблице дисциплины, нажмите левую клавишу мыши и, не отпуская ее, перетащите курсор на поле КОД ДИСЦИПЛИНЫ в таблице ОЦЕНКИ, а затем отпустите левую клавишу мыши. На экране откроется окно СВЯЗИ;

· Щелкните по ячейке ОБЕСПЕЧЕНИЕ ЦЕЛОСТНОСТИ ДАННЫХ – в ней должна появиться галочка;

· Щелкните по ячейкам КАСКАДНОЕ ОБНОВЛЕНИЕ СВЯЗАННЫХ ПОЛЕЙ и КАСКАДНОЕ УДАЛЕНИЕ СВЯЗАННЫХ ЗАПИСЕЙ.

Информация. Задание каскадного обновления связанных полей и каскадного удаление связанных записей позволит вам редактировать записи только в таблице ДИСЦИПЛИНЫ, а в таблице ОЦЕНКИ эти действия будут со связанными записями выполняться автоматически. Например, если вы удалите из таблицы ДИСЦИПЛИНЫ один предмет, то в таблице оценки удалятся все строки, связанные с этим предметом.

· Нажмите кнопку СОЗДАТЬ. Связь будет создана;

· Аналогично создайте связи между полем КОД ПРЕПОДАВАТЕЛЯ в таблице ПРЕПОДАВАТЕЛИ и полем КОД ПРЕПОДАВАТЕЛЯ в таблице ДИСЦИПЛИНЫ, а также между полем КОД СТУДЕНТА в таблице СТУДЕНТЫ и полем КОД СТУДЕНТА в таблице ОЦЕНКИ;

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

· Результаты работы представьте преподавателю.

2.3. Лабораторная работа №2

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

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

Простейшая форма на основе одной таблицы может создана при выборе одного из режимов Автоформы: в столбец, ленточная, табличная.

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

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

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

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

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

Для этого:

· откройте вкладку ФОРМЫ;

· нажмите кнопку создать;

· в открывающемся списке выберите таблицу ДИСЦИПЛИНЫ;

· Выберите пункт АВТОФОРМА:В СТОЛБЕЦ;

· Нажмите кнопку OK. Форма для ввода данных создана. (см. рисунок 1)

 
 

 


Рисунок 1 Форма дисциплины

· Заполните форму данными (пример данных приведен в табл. 7);

Аналогично создайте форму для ввода данных в таблицу ПРЕПОДАВАТЕЛИ

(см. рисунок 2)

(пример данных для ввода в табл.5)

 

 

 
 

Рисунок 2 Форма преподаватели

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

 

Таблица 5

Код Фамилия Имя Отчество Дата рожд. Должность Стаж Кафедра Телефон Зарплата
  Истомин Ремир Евгеньевич 23.10.54 Доцент   Информатики 110-44-68 2000 р.
  Миронов Павел Юрьевич 25.07.40 Профессор   Экономики 312-21-40 3000 р.
  Гришин Евгений Сергеевич 05.12.67 Доцент   Физики 260-23-65 2000 р.
  Сергеева Ольга Ивановна 12.02.72 Ассистент   Математики 234-85-69 1500 р.
  Емец Татьяна Ивановна 16.02.51 Доцент   Экономики 166-75-33 2000 р.
  Ипатова Татьяна Павловна 30.05.66 Доцент   Информатики 210-36-98 2000 р.
  Коробков Валентин Андреевич 30.07.48 Профессор   Аэродинамики 166-75-33 3500 р.

 

 

Создайте ленточную автоформу на основе таблицы СТУДЕНТ смотрите рисунок 4

Данные в таблице СТУДЕНТ импортированы из файла. Сверьте их с таб. 6

 

Таблица 6

Код студента Фамилия Имя Отчество Номер группы Адрес Телефон Медалист
  Арбузов Николай Николаевич   Пр.Славы 18-2-177 260-15-63 Да
  Киршин Петр Валерьевич   Пер.Матвеев 3-21 110-67-82 Да
  Кривинский Сергей Николаевич   ул.Димитрова 12-133 172-97-21 Нет
  Крылова Елена Петровна   ул.Тамбасова 21-66 130-31-87 Да
  Кульчий Григорий Викторович   ул.Турку 21-3-69 269-53-75 Да
  Патрикеев Олег Борисович   пр.Стачек 12-52 234-11-63 Нет
  Перлов Кирилл Николаевич   ул.Декабристов 21-33 312-21-33 Нет
  Соколова Наталия Петровна   ул.Тамбовская 9-7 166-87-24 Нет
  Степанская Ольга Витальевна   ул.Типанова 4-53 293-43-77 Да
  Тимофеев Сергей Трофимович   пр.Славы 10-1-145 260-11-57 Да
  Белых Ярослав Игоревич   пр.Жукова 17-3-56   Да
  Григорьев Константин Петрович   пр.Жукова 17-3-56   Нет
  Вирская Полина Андреевна   ул.Седова 12-35 233-87-44 Да
  Витязев Евгений Николаевич   ул.Ивановская 10-37 234-55-87 Да
  Демченко Григорий Евгеньевич   пр.Стачек 54-78 277-12-05 Нет
  Куликова Анна Сергеевна   ул.Авиационная 6-86 290-24-45 Да
  Крылова Татьяна Николаевна   пл.Тургенева 7-4 114-84-62 Да
  Митяев Сергей Григорьевич   пр.Жукова 17-3-56   Нет
  Шевченко Игорь Олегович   пр.Московский 205-143 293-63-93 Нет
  Яковлев Олег Петрович   ул.Софийская 45-2-57 269-94-83 Да

 

Таблица 7

Код дисциплины Название дисциплины семестр Код преподавателя Экзамен
  Информатика     Экз
  Экономика     Экз
  Физика     Экз
  Менеджмент     Экз
  Маркетинг     Зач
  Математика     Зач

¨
 
 

Преобразуйте в режиме конструктора форму ПРЕПОДАВАТЕЛИ к виду показанному на рисунке.


Рисунок 3 Форма преподаватели

Для этого:

¨ Увеличьте область заголовка и примечания формы

¨ для добавления новых элементов управления в форму воспользуйтесь ПАНЕЛЬЮ ЭЛЕМЕНТОВ (меню ВИД или кнопка на панели инструментов)

¨ В области заголовка разместите элемент НАДПИСЬ и введите ПРЕПОДАВАТЕЛИ

¨ Измените расположение полей в области данных, так как показано на рис.3

Совет Для изменения размера или положения элемента его необходимо предварительно выделить. Если указатель мыши принимает форму раскрытой ладони можно перетащить элемент (надпись и поле) в новое место. Перетащить поле и присоединенную к нему надпись можно независимо друг от друга, когда указатель мыши принимает форму сжатой ладони с вытянутым указательным пальцем). Для выделения нескольких элементов необходимо удерживать нажатой клавишу <Shift>. Чтобы выровнять элементы по размеру или расположению можно воспользоваться пунктом меню Формат

¨ Добавьте рисунок

Преобразуйте форму СТУДЕНТ в режиме конструктора

 
 

Рисунок 4 Форма студент

¨ Добавьте заголовок

¨ В области примечания разместите кнопки перехода между записями и кнопку закрытия формы.

 

Таблица 8

 

Код студента Код дисциплины Номер семестра Оценки
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       
       

 

¨ При помощи мастера форм создайте форму для таблицы оценки. Выбор внешнего вида сделайте самостоятельно.

¨ Сверьте данные в форме с табл. 8, т.к. они были импортированы из файла.

Предъявите результаты вашей работы преподавателю

 

 

2.4. Лабораторная работа №3

ФОРМИРОВАНИЕ ЗАПРОСОВ ДЛЯ МНОГОТАБЛИЧНОЙ БАЗЫ ДАННЫХ

 

Типы запросов

· ·Запрос на Выборку --выбирает данные из взаимосвязанных таблиц и других запросов. Результатом является таблица, которая существует до закрытия запроса.

· ·Перекрестный Запрос – предназначен для группирования данных и представления их в компактном виде, удобен для анализа В соответствии с заданием начните формировать запросы.

· Запрос на Создание Таблицы -- основан на запросе на выборку, но результат сохраняется в таблице

· ·Запросы на Обновление, Добавление, Удаление --Запросы действия, в результате которых изменяются данные в таблице.

1. СОЗДАЙТЕ ЗАПРОС С ПАРАМЕТРАМИ, в котором при вводе в окно параметров номера группы (в примере это 151 или 152) на экран должен выводиться состав этой группы. Для этого:

· откройте вкладку ЗАПРОСЫ;

· нажмите кнопку СОЗДАТЬ;

· в появившемся окне выберите ПРОСТОЙ ЗАПРОС и нажмите кнопку OK;

· в появившемся окне в ячейке ТАБЛИЦЫ/ЗАПРОСЫ выберите из раскрывающегося списка таблицу СТУДЕНТЫ;

· перенесите все поля из окна ДОСТУПНЫЕ ПОЛЯ в окно ВЫБРАННЫЕ ПОЛЯ;

· нажмите кнопку ДАЛЕЕ. Выводить надо все поля, поэтому еще раз нажмите кнопку ДАЛЕЕ;

· в появившемся окне введите имя запроса ГРУППА;

· нажмите кнопку ГОТОВО. На экране появится таблица с данными запроса. Но вам надо, чтобы при выполнении запроса спрашивался номер группы. Для реализации этого перейдите в режим конструктора;

· в строке УСЛОВИЯ ОТБОРА для поля НОМЕР ГРУППЫ введите фразу (скобки тоже вводить): [Введите номер группы];

Внимание!.. Для просмотра запроса в режиме SQL необходимо воспользоваться пунктом меню ВИД – РЕЖИМ SQL

· выполните запрос, выполнив команду ЗАПРОСÞЗАПУСК;

· в появившемся окне введите 151 и нажмите OK. На экране появится таблица с данными о студентах 151 группы;

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

2. СОЗДАЙТЕ ЗАПРОС, в котором выводятся оценки студентов заданной группы по заданной дисциплине. Для этого:

· На вкладке ЗАПРОСЫ нажмите кнопку СОЗДАТЬ;

· Выберите ПРОСТОЙ ЗАПРОС и нажмите OK;

· Выберите таблицу СТУДЕНТЫ и перенесите поля ФАМИЛИЯ, ИМЯ, ОТЧЕСТВО, НОМЕР ГРУППЫ в окно ВЫДЕЛЕННЫЕ ПОЛЯ;

Внимание! В дальнейшем под фразой В ТАБЛИЦЕ … ВЫБЕРИТЕ ПОЛЕ …. Будем понимать выбор таблицы, выбор поля и перенос его в окно ВЫДЕЛЕННЫЕ ПОЛЯ.

· В таблице ДИСЦИПЛИНЫ выберите поле НАЗВАНИЕ ДИСЦИПЛИНЫ;

· В таблице ОЦЕНКИ выберите поле ОЦЕНКИ. Вы сформировали 6 полей запроса – они связаны между собой посредством схемы данных;

· Нажмите кнопку ДАЛЕЕ, затем в появившемся окне снова нажмите кнопку ДАЛЕЕ;

· В появившемся окне введите имя запроса ОЦЕНКИ ГРУППЫ, затем щелкните по ячейке ИЗМЕНЕНИЕ СТРУКТУРЫ ЗАПРОСА (в ней должна появиться черная точка) – это позволит сразу перейти в режим конструктора;

· Нажмите кнопку ГОТОВО;

· в строке УСЛОВИЯ ОТБОРА для поля НОМЕР ГРУППЫ введите фразу: [Введите номер группы];

· в строке УСЛОВИЯ ОТБОРА для поля НАЗВАНИЕ ДИСЦИПЛИНЫ введите фразу: [Введите название дисциплины];

· выполните запрос;

· в первом появившемся окне введите 152, затем нажмите OK, во втором – ИНФОРМАТИКА и нажмите OK. На экране появится таблица со списком 152 группы и оценками по информатике;

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

3. СОЗДАЙТЕ ПЕРЕКРЕСТНЫЙ ЗАПРОС о среднем балле в группах по дисциплинам. Но такой запрос строится на основе одной таблицы или одного запроса. Поэтому надо сначала сформировать запрос, в котором были бы поля НОМЕР ГРУППЫ, НАЗВАНИЕ ДИСЦИПЛИНЫ и ОЦЕНКИ. Для этого:

· На вкладке ЗАПРОСЫ нажмите кнопку СОЗДАТЬ;

· Выберите ПРОСТОЙ ЗАПРОС и нажмите OK;

· Выберите из таблицы СТУДЕНТЫ поле НОМЕР ГРУППЫ;

· Выберите из таблицы ДИСЦИПЛИНЫ поле НАЗВАНИЕ ДИСЦИПЛИНЫ;

· Выберите из таблицы ОЦЕНКИ поле ОЦЕНКИ;

· Нажмите кнопку ДАЛЕЕ, затем в появившемся окне снова нажмите кнопку ДАЛЕЕ;

· В появившемся окне введите имя запроса ДИСЦИПЛИНЫ ОЦЕНКИ ГРУППЫ;

· Нажмите кнопку ГОТОВО;

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

Теперь можно создавать перекрестный запрос. Для этого:

· На вкладке ЗАПРОСЫ нажмите кнопку СОЗДАТЬ;

· Выберите ПЕРЕКРЕСТНЫЙ ЗАПРОС и нажмите OK;

· Щелкните по ячейке ЗАПРОСЫ, выберите ДИСЦИПЛИНЫ ОЦЕНКИ ГРУППЫ и нажмите ДАЛЕЕ;

· Для заголовков строк выберите поле НАЗВАНИЕ ДИСЦИПЛИНЫ и нажмите ДАЛЕЕ;

· Для заголовков столбцов выберите поле НОМЕР ГРУППЫ и нажмите ДАЛЕЕ;

· Выберите функцию AVG, т.е. среднее (она по умолчанию уже выделена) и нажмите ДАЛЕЕ;

· Введите название запроса СРЕДНИЕ ОЦЕНКИ и нажмите ГОТОВО. Откроется таблица перекрестного запроса.

· Обратите внимание на то, что Access создает еще итоговое значение средних оценок по дисциплинам;

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



Поделиться:


Последнее изменение этой страницы: 2016-12-28; просмотров: 265; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.218.138.221 (0.167 с.)