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

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

  • ЗАДАНИЕ 2. Создание реляционной базы данных.

  • Имя поля Тип данных Размер поля

  • КРАТКАЯ СПРАВКА: Организация данных

  • ЗАДАНИЕ 4.

  • Лекционный материал. 1-3921-Информатика. Средства создания и сопровождения сайта


    Скачать 191.68 Kb.
    НазваниеСредства создания и сопровождения сайта
    АнкорЛекционный материал
    Дата06.09.2022
    Размер191.68 Kb.
    Формат файлаdocx
    Имя файла1-3921-Информатика.docx
    ТипПрактическая работа
    #663820
    страница4 из 4
    1   2   3   4

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

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

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

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

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

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

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

    ЗАДАНИЕ 2. Создание реляционной базы данных.

    1. Создайте базу данных Деканат. Для этого:

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

      • в окне <Файл новой базы данных> задайте имя Деканат и выберите папку, где будет находиться ваша база (т.е. папку с номером вашей группы).

      • щелкните по кнопке <Создать>

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

      • в окне базы данных выберите вкладку Таблицы, а затем щелкните по кнопке <Создание таблицы в режиме Конструктора>;

      • в окне "Новая таблица" выберите пункт Конструктор и щелкните по кнопке <ОК>. В результате проделанных операций открывается окно таблицы в режиме конструктора, в котором следует определить поля таблицы;

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

        Имя поля

        Тип данных

        Размер поля

        Код студента

        Числовой

        Целее

        Фамилия

        Текстовый

        15

        Имя

        Текстовый

        12

        Отчество

        Текстовый

        15

        Номер группы

        Числовой

        Целое

        Телефон

        Текстовый

        9

        Стипендия

        Логический

        Да/Нет

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

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

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

    1. Создайте структуру таблицы Дисциплины аналогично п.2 в соответствии с табл. 2.

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

    Имя поля

    Тип данных

    Размер поля

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

    Числовой

    Целое

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

    Текстовый

    30

    4. Структура таблицы Преподаватели уже создана в работе 1 и заполнена данными, поэтому для работы используйте эту таблицу с одним лишь изменением - в структуру таблицы надо добавить поле "Код дисциплины".

    Для этого откройте ранее созданную вами базу данных Преподаватели. Выделите в ней таблицу Преподаватели. Выберите команду Файл-Экспорт. В появившемся диалоговом окне укажите рабочую базу данных Деканат, затем щелкните по кнопке Экспорт. В появившемся диалоговом окне выберите пункт Структура и данные, а затем нажмите ОК.

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

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

    Имя поля

    Тип данных

    Размер поля

    Код студента

    Числовой

    Целое

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

    Числовой

    Целое

    Оценки

    Числовой

    Байт

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

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

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

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

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

      • создайте связь между таблицами Дисциплины и Оценки. Для этого подведите курсор мыши к полю "Код дисциплины" в таблице Дисциплины щелкните левой кнопкой мыши и, не отпуская ее, перетащите курсор на поле "Код дисциплины" в таблицу Оценки, а затем отпустите кнопку мыши. На экране откроется окно "Связи";

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

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

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

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

      • аналогично создайте связи между полем "Код дисциплины" в таблице Дисциплины и полем "Код дисциплины" в таблице Преподаватели, а также между полем "Код студента" в таблице Студенты и полем "Код студента" в таблице Оценки. Результат представлен на рисунке ниже.

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



    ЗАДАНИЕ 3.

    1. Разработайте запрос с параметрами о студентах заданной группы, в котором при вводе в окно параметров номера группы (в примере это 151 или 152) на экран должен выводиться состав этой группы.

    Откройте вашу базу данных "Деканат".

    Для создания запроса с параметрами о студентах заданной группы:

    • откройте вкладку Запросы,

    • щелкните по кнопке Создать;

    • в появившемся окне выберите Простои запрос и щелкните по кнопке <ОК>;

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

    • перенесите все поля из окна "Доступные поля" в окно "Выбранные поля"; (используйте значок "»")

    • щелкните по кнопке <Далее>. Выводить надо все поля, поэтому поставьте метку в строке "подробный (вывод каждого поля каждой записи)",

    • щелкните по кнопке <Далее>;

    • в появившемся окне введите имя запроса Группа; надо, чтобы при выполнении запроса выяснялся номер группы. Для этого перейдите в режим конструктора, щелкните по значку

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

    • выполните запрос, щелкнув по кнопке на панели инструментов;

    • в появившемся окне введите 151 и щелкните по кнопке <ОК>. На экране появится таблица с данными о студентах 151-й группы;

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

    1. Создайте запрос, в котором выводятся оценки студентов заданной группы по заданной дисциплине. Для этого:

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

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

    • выберите таблицу Студенты и перенесите поля "Фамилия", "Имя", "Отчество", "Номер группы" в окно "Выделенные поля" (выделяя нужное поле и щелкая по кнопке ">").

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

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

    • в таблице Оценки выберите поле "Оценки". Вы сформировали шесть полей запроса - они связаны между собой посредством схемы данных;

    • щелкните по кнопке <Далее>, затем в появившемся окне снова щелкните по кнопке <Далее>;

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

    • щелкните по кнопке <Готово>;

    • в строке Условия отбора для поля "Номер группы" введите фразу: [Введите номер группы],

    • в строке Условия отбора для поля "Название дисциплины" введите фразу: [Введите название дисциплины]. Сохраните изменения.

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

    • в первом появившемся окне введите 152, затем щелкните по кнопке <ОК>, во втором - введите Информатика и щелкните по кнопке <ОК>. На экране появится таблица со списком 152-й группы и оценками по информатике;

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

    1. Создайте перекрестный запрос, в результате которого создастся выборка, отражающая средний балл по дисциплинам в группах. Такой запрос строится на основе одной таблицы или одного запроса, в связи с чем надо сначала сформировать запрос, в котором были бы поля «Номер группы», «Название дисциплины», и «Оценки». Для этого:

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

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

    • выберите из таблицы Студенты поле "Номер группы";

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

    • выберите из таблицы Оценки поле "Оценки";

    • щелкните по кнопке <Далее>, затем в появившемся окне выберите строку "подробный (вывод каждого поля каждой записи)", снова щелкните по кнопке <Далее>;

    • в появившемся окне введите имя запроса Дисциплины оценки группы;

    • щелкните по кнопке <Готово>;

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

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

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

    • щелкните по ячейке Запросы, выберите Дисциплины оценки группы и щелкните по кнопке <Далее>;

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

    • выберите поле "Номер группы" и щелкните по кнопке <Далее>;

    • выберите среднее, и щелкните по кнопке <Далее>;

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

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

    1. Разработайте запрос на увеличение на 10% заработной платы тех преподавателей, кто получает менее 5000 руб. Для этого:

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

      • выберите Простой запрос;

      • в таблице Преподаватели выберите поле <3арплата>;

      • щелкните по кнопке <Далее>, затем в появившемся окне снова щелкните по кнопке <Далее>;

      • в появившемся окне введите имя запроса Изменение зарплаты;

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

      • щелкните по кнопке <Готово>; в строке Условия отбора введите <5000;

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

      • в строке конструктора запроса Обновление в поле "Зарплата" введите: [Зарплата]* 1,1;

      • выполните запрос, подтвердив готовность на обновление данных;

      • закройте запрос, подтвердив его сохранение;

      • откройте форму Преподаватели;

      • просмотрите изменение заработной платы у преподавателей, получающих меньше 5000 р.;

      • закройте форму.

    1. Создайте запрос на удаление отчисленных студентов. Для создания запроса на отчисление студента гр. 152 Перлова Кирилла Ивановича:

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

    • выберите Простой запрос;

    • в таблице Студенты выберите поля "Фамилия", "Имя", "Отчество", "Номер группы";

    • щелкните по кнопке <Далее>, затем в появившемся окне снова щелкните по кнопке <Далее>;

    • в появившемся окне введите имя запроса Отчисленные студенты;

    • щелкните по ячейке Изменить макет запроса;

    • щелкните по кнопке <Готово>;

    • в строке Условия отбора введите; в поле "Фамилия" - Перлов, в поле "Имя" - Кирилл, в поле

    • "Отчество" - Николаевич, в поле "Номер группы" -152;

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

    • просмотрите удаляемую запись, выполнив команду Вид - Режим таблицы, если отчисляемый студент выбран правильно, то перейдите в режим конструктора и выполните запрос. Если условия отбора сделаны неправильно, измените их:

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

    • откройте форму Студенты и удостоверьтесь в удалении записи о студенте Перлове;

    • закройте форму.

    1. Разработайте запрос на создание базы данных отличников.

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

    • выберите Простой запрос;

    • в таблице Студенты выберите поля "Фамилия", "Имя", "Отчество" и "Номер группы", а в таблице Оценки - поле "Оценки";

    • щелкните по кнопке <Далее>, затем в появившемся окне вновь щелкните по кнопке <Далее>;

    • в появившемся окне введите имя запроса Отличники;

    • щелкните по ячейке Изменить макет запроса;

    • щелкните по кнопке <Готово>;

    Примечание.Для создания этого запроса надо воспользоваться операцией группировки. Будем считать отличниками тех студентов, которые набрали за четыре экзамена 20 баллов. Операция группировки позволит просуммировать оценки студентов по всем экзаменационным дисциплинам.

    • для выполнения групповых операций выполните команду Вид, Групповые операции;

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

    • в строке Условия отбора поля "Оценки" введите 20;

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

    • перейдите в режим конструктора, выполнив команду Вид, Конструктор;

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

    • введите имя таблицы Студенты-отличники и щелкните по кнопке <ОК>;

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

    • закройте с сохранением запрос;

    • откройте вкладку Таблицы;

    • откройте таблицу Студенты-отличники. Удостоверьтесь в правильности создания таблицы. Закройте таблицу.

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

    КРАТКАЯ СПРАВКА: Организация данных

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

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

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

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

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

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

      • связь Один-к-одному создается в том случае, когда оба связываемых поля являются ключевыми или имеют уникальные индексы;

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

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

    ЗАДАНИЕ 4. Сохраните файл базы данных под именем Фамилия_№группы_ПР25 и отправьте преподавателю.


    1   2   3   4


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