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

Лабораторная работа 1 СУБД Microsoft ccess.

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

Поможем написать учебную работу

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

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 3.2.2025

PAGE  28

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

СУБД Microsoft Access. Таблицы

ЦЕЛЬ РАБОТЫ. Познакомиться с СУБД Microsoft Access .Создать базу данных "Учебный процесс", состоящую из пяти  таблиц: "Студенты", "Специальности", "Учебный план", "Экзамены", "Стипендия". Создать схему данных, установив связи между таблицами.

Теоретическая часть

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

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

Задания для выполнения

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

Рис. 1. Логическая модель базы данных "Учебный процесс"

Описание таблиц

  1.  В учебном заведении несколько специальностей, информация о которых содержится в таблице "Специальности". Первичный ключ – шифр специальности.
  2.  Для каждой специальности есть свой учебный план из набора дисциплин, распределенных по семестрам. Таблица "Учебный план" связана с таблицей "Специальности" по шифру специальности. Первичный ключ – код плана (все записи нумеруются по порядку, таким образом, у каждой записи учебного плана свой код плана).
  3.  Информация о студентах содержится в таблице "Студенты". Каждый студент принадлежит какой-либо учебной группе. Название группы состоит из шифра специальности и номера группы. Шифр специальности соответствует специальности, на которой учится студент (например: Э-101 соответствует специальности «Экономика и менеджмент», год поступления – 2001). Таблица "Студенты" связана с таблицей "Специальности" по шифру специальности. Первичный ключ – номер студента (номер студенческого билета).
  4.  Студенты сдают экзамены в соответствии с учебным планом. Таблица "Экзамены" связана с таблицей "Студенты" по номеру студента, а с таблицей "Учебный план" по коду плана. Комбинация полей "номер студента" и "код плана" образуют составной первичный ключ таблицы "Экзамены".
  5.  Таблица "Стипендия" содержит информацию о стипендии, начисленной студентам. Первичный ключ – номер студента. Связана с таблицей "Студенты" по номеру студента.

Задача 1. Создать базу данных "Учебный процесс".

Для этого выбрать из меню пункт Файл/ Создать базу данных/ Новая база данных, задать ее имя «Учебный процесс» и поместить в свой рабочий каталог.

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

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

Задача 2. Создать таблицу "Студенты".

Для этого выбрать пункт Создать/ Конструктор.

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

Таблица должна содержать следующие поля:

На рисунке отражены свойства поля [номер студента].

Свойства остальных полей определите самостоятельно.

При определении полей внимательно следите за правильным заданием типа данных и размера поля.

Поле [номер студента] сделайте ключевым (контекстное меню пункт ключевое поле).

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

Для поля [дата рождения] задайте формат вывода: краткий формат даты и маску ввода: ##.##.####

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

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

Пример записей:

Номер студенческого билета

Фамилия

Имя

Отчество

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

Номер группы

Дата

рождения

Область

12536

Истомин

Павел

Федорович

РС

101

12.08.1980

Владимирская

21011

Крошин

Павел

Семенович

Э

101

12.08.1983

Владимирская

Населенный пункт

Адрес

Телефон

Примечание

Ковров

Комсомольская 15-34

4-19-14

староста группы

Малыгино

Озерная 6

4-12-55

Задача 3. Создать таблицу "Специальности" следующей структуры:

Имя поля

Тип

Размер

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

Индексированное поле

Ключевое поле

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

Текстовое

4

да

Да (совпадения не допускаются)

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

код

Текстовое

6

да

Да (совпадения не допускаются)

название специальности

Текстовое

50

да

нет

Факультет

Текстовое

30

да

нет

Заполните таблицу данными о специальностях.

Пример заполнения таблицы:

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

Код

Название специальности

Факультет

РС

2103

Роботы и робототехнические системы

Автоматики и электроники

Т

1201

Технология машиностроения

Механико - технологический

Э

0611

Менеджмент организаций

Экономики и менеджмента

Задача 4. Создать таблицу "Учебный план" следующей структуры:

Имя поля

Тип

Размер

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

Индексированное поле

Ключевое поле

код плана

Счетчик

Длинное целое

{тип счетчик по умолчанию обязателен}

Да (совпадения не допускаются)

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

дисциплина

Текстовое

50

Да

Да (совпадения допускаются)

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

Текстовое

3

Да

Да (совпадения допускаются)

семестр

Числовое

целое

Да

Да (совпадения допускаются)

Заполните таблицу данными  учебного плана для введенных вами специальностей.

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

Пример заполнения таблицы:

Код плана

Дисциплина

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

Семестр

1

физика

РС

1

2

иностранный язык

РС

1

3

информатика

РС

2

4

математика

Э

1

5

математика

Э

2

6

иностранный язык

Э

2

Задача 5. Создать таблицу "Экзамены" следующей структуры:

Имя поля

Тип

Размер

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

Индексированное поле

Ключевое поле

код плана

Числовое

длинное целое

да

Да (совпадения допускаются)

Составной первичный ключ

номер студента

Числовое

длинное целое

да

Да (совпадения допускаются)

Оценка

Текстовое

4

нет

Да (совпадения допускаются)

Дата

Дата / время

нет

Да (совпадения допускаются)

Экзаменатор

Текстовое

30

нет

нет

Заполнять таблицу данными пока не обязательно.

Задача 6. Создать таблицу "Стипендия" следующей структуры:

Имя поля

Тип (размер)

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

Индексированное поле

Ключевое поле

номер студента

Числовое (длинное целое)

да

Да (совпадения не допускаются)

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

Стипендия

Денежный

нет

нет

Заполните таблицу данными для ваших студентов (номера студентов брать из таблицы "Студенты").

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

Для определения связей служит схема данных.

Определение связей между таблицами:

1) Закройте все открытые таблицы. Создавать или изменять связи между открытыми таблицами нельзя.

2) Переключитесь в окно базы данных и выберите в контекстном меню пункт Схема данных (или кнопку на панели инструментов или меню Сервис / Схема данных).

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

4) Добавьте в схему данных все таблицы. Затем закройте диалоговое окно Добавление таблицы.

5) Ключевые поля в схеме данных выделяются жирным шрифтом.

Для связывания полей выберите поле в главной таблице и перетащите его на соответствующее поле в связанной таблице (например, поле Шифр специальности из табл. "Специальности" в табл. "Студент").

Появится окно Изменение связей. 

Например, при определении связи между таблицами "Специальности" и "Студенты" в окне Изменение связей должно быть отображено следующее:

6) Для создания связи нажмите кнопку Создать.

7) Если нужно изменить уже существующую связь, нужно её выделить и выбрать в контекстном меню пункт Изменить связь. Чтобы удалить связь, её также нужно сначала выделить, а затем удалить.

ТРЕБОВАНИЯ К ОТЧЕТУ

Отчет по лабораторной работе должен содержать:

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

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

Запросы на выборку

ЦЕЛЬ РАБОТЫ. Создание запросов на выборку данных с помощью конструктора.

Теоретическая часть

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

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

Выражения

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

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

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

Константы

  •  Текст должен быть заключен в кавычки (“Пример текста”).
  •  Дата должна быть заключена между знаками # ( например: #31/01/98#).
  •  Null – соответствует любому выражению, которое ничего не содержит.
  •  Истина (True) – соответствует логическому выражению, которое принимает истинное значение.
  •  Ложь (False) – соответствует логическому выражению, которое принимает ложное значение.

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

  •  [ ] – выделяет имя объекта,  например: [Фамилия].
  •  ! – разделяет имена объектов, напрмер: [СТУДЕНТЫ]! [Фамилия].

Операторы

  •  * – умножение
  •  / – деление
  •  \ – деление без остатка
  •  Mod – остаток от деления
  •  ^ – возведение в степень
  •  & – объединение (конкатенация) строк
  •  логические операторы :
    <  – меньше,
    > – больше,
    >= – не меньше,
    <= – не больше,
    <> – не равно,
    = – равно.
  •  Like – сравнение с маской, позволяет создавать выражения, содержащие символы подстановки:

* – соответствует любой группе символов;

? – соответствует любому символу. Например: выражение [Фамилия] Like “А*” принимает истинное значение для всех записей, фамилия которых начинается на А.

  •  In – поиск значений в списке. Например: выражение [Населенный пункт] In (“Малыгино”, “Ковров”, “Вязники”) принимает истинное значение для всех записей, значение которых попадает в список.
  •  Is  – используются для сравнения со значением. Например: выражение [Фамилия] Is Null принимает истинное значение, когда в поле [Фамилия] нет данных.

Некоторые встроенные функции

Все функции должны содержать скобки ().

  •  Sqr() – квадратный корень.
  •  Abs() – абсолютное значение.
  •  Log() – натуральный логарифм .
  •  Cos(), Sin(), Tan() – косинус, синус, тангенс аргумента.
  •  Left(строка,количество), Right(строка,количество), Mid (строка, начальная позиция, количество) – вырезают определенное количество символов в начале, конце и середине строки-аргумента.
  •  IIf(условие,аргумент1,аргумент2) – если условие истинно, возвращает аргумент1, иначе возвращает аргумент2 .
  •  Date() – возвращает текущую дату.
  •  Year(дата), Month(дата), Day(дата) – возвращают год, месяц и день из даты.

Группировка данных и групповые операции

Группировка позволяет объединить данные в группы по совпадающим значениям в каком-либо поле и провести итоговые вычисления для каждой группы. В результате запроса с группировкой отображается для каждой группы только одна строка с итоговыми данными.

Групповые операции:

  •  Sum – суммирование всех значений данного поля.
  •  Avg – среднее значение для данного поля.
  •  Min – определяет минимальное значение для данного поля.
  •  Max – определяет максимальное значение для данного поля
  •  Count – определяет общее количество записей, которые содержат некоторое значение в этом поле.
  •  StDev – отображает статистическое стандартное отклонение значений данного поля.
  •  Var – отображает статистическую вариацию значений данного поля.
  •  First – отображает значение, находящееся в этом поле в первой записи для всех записей.
  •  Last – отображает значение, находящееся в этом поле в последней записи для всех записей.
  •  Выражение – позволяет ввести выражение, а не название поля в ячейке Поле.
  •  Условие – показывает, что это поле используется только для ввода условия отбора, определяющего какие записи включать в запрос.

Задания для выполнения

Запросы на выборку из одной таблицы

Задача 1. Создать запрос на выбор всех ковровских студентов.

Для этого:

  •  в окне Базы данных перейти к странице Запросы, нажать кнопку Создать, выбрать Конструктор.
  •  Откроется окно Добавление таблицы.
  •  Добавить в запрос нужную таблицу: "Студенты".
  •  Закрыть окно Добавление таблицы.
  •  Выбрать поля, которые будут выводиться в запросе: [Номер студента], [Фамилия], [Населенный пункт].
  •  В поле [Населенный пункт] в строке условие отбора написать = "Ковров", в результате получится условие: [Населенный пункт]= "Ковров".

  •  Сохранить запрос под именем «2-1 – Ковровчане».
  •  Выполнить запрос. Для этого переключить режим работы Вид, Режим таблицы, или нажать кнопку Запуск на панели инструментов.
  •  Для изменения запроса его нужно снова открыть в режиме конструктора.

Для записи составных условий отбора используется правило:

Значения, стоящие в одной строке, автоматически соединяются союзом «и» (AND), в разных строках – «или» (OR).

Задача 2. Создайте запрос на выбор всех ковровских студентов, не имеющих телефона.

Конструктор:

Получено условие: [Населенный пункт]= "Ковров" AND [телефон] Is Null.

Сохраните и выполните запрос.

Задача 3. Создайте запрос на выбор всех студентов какого-либо курса независимо от специальности. Курс определяется номером группы, а именно, его двумя последними цифрами. Таким образом, все студенты из групп с номерами 101 и 201 учатся на одном курсе.

Конструктор:

Получено условие: [номер группы]=101 OR [номер группы]=201.

Сохраните и выполните запрос.

Задача 4. Создайте запрос на выбор студентов, фамилии которых начинаются на букву "А" или на букву "Б". В условии отбора использовать оператор Like.

Запросы с вычисляемыми полями

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

Задача 5. Создайте запрос на выбор всех студентов, родившихся в текущем месяце.

Конструктор:

оле [месяц] задается с помощью построителя выражений. В нем выводится номер месяца рождения каждого студента.

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

Сохраните и выполните запрос.

Задача 6. Создайте запрос на выбор данных о студентах и их возрасте, т.е. количестве лет.

Задача 7. Создайте запрос на выбор всех студентов старше 20 лет.

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

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

Задача 8. Создайте запрос для ведомости стипендии всех студентов, получающих стипендию, представленных отсортированными по учебным группам, а в группах – по фамилиям.

Вычисляемое поле [Инициалы] задается следующим выражением:

Left([Студенты]![Имя];1) &"."& Left([Студенты]![Отчество];1) & "."

Задача 9. Создайте запрос на выбор всех иногородних студентов, не получающих стипендию.

Запросы с группировкой данных

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

Для создания запроса с группировкой нужно в режиме конструктора нажать кнопку Групповые операции в контекстном или главном меню.

В списке запроса добавится еще одна строка Групповая операция. Выпадающий список в ячейке групповой операции содержит функции, описанные выше в теоретической части.

Задача 10. Создайте запрос с группировкой данных по учебным группам и вычислением средней и суммарной стипендии в каждой группе.

Конструктор:

Задача 11. Создайте запрос с группировкой данных по населенным пунктам и вычислением количества студентов.

ТРЕБОВАНИЯ К ОТЧЕТУ

Отчет по лабораторной работе должен содержать:

  •  цель работы;
  •  ответы на вопросы теоретической части;
  •  перечень выполненных задач (распечатки результатов).


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

Запросы на изменение данных

и создание таблиц

ЦЕЛЬ РАБОТЫ. Создание запросов на выборку, обновление, добавление, удаление данных в таблицах и запроса на создание таблицы.

Теоретическая часть

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

Задания для выполнения

Запросы на добавление

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

Пустые записи добавлять нельзя, должны быть заполнены все обязательные поля, остальные поля могут быть пустыми.

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

Пусть нужно сформировать ведомость о сдаче студентами группы Э-101 экзамена с кодом 5, т.е. философии( см. таб. Учебный план).

  •  Создайте новый запрос в режиме конструктора. По умолчанию создается запрос на выборку. Номера студентов в таблицу "Экзамены" будут добавляться из таблицы "Студенты", поэтому в запрос нужно добавить  таблицу "Студенты".
  •  Далее определите вид запроса. Для этого из меню выбрать пункт Запрос, Добавление. В появившемся окне нужно задать имя таблицы, в которую будут добавляться записи: "Экзамены". В конструкторе запроса появится новая строка добавление.

Конструктор:

  •  В строке конструктора поле указываются источники данных, а в строке добавление указывается, в какое поле таблицы "Экзамены" эти данные добавляются. Например: [номер студента] из таблицы "Студенты" добавляется в [номер студента] из таблицы "Экзамены", константа 5 добавляется в поле [код плана]. Имена вычисляемых полей (В1,В2,В3) не важны и могут быть произвольными.
  •  Кроме полей, из которых добавляются данные, могут быть указаны поля, для которых задаются условия отбора данных. Например: [шифр специальности]="Э" и [номер группы]=101 для отбора студентов из конкретной группы.  
  •  При создании запроса используйте свои данные для кода плана и группы.
  •  Выполните созданный запрос. В результате в таблицу "Экзамены" добавятся новые записи. Обратите внимание, как в окне базы данных различаются значки запросов на выборку и добавление. Если выполнить этот же запрос второй раз , будет выведено предупреждающее сообщение и записи добавлены не будут, так как невозможно добавление записей с одинаковыми значениями первичного ключа ([номер студента] + [код плана]).
  •  Откройте таблицу "экзамены" и заполните поле [оценка] произвольными оценками (отл, хор, уд, неуд).

Задача2 . Аналогично предыдущей задаче задайте еще 1 экзамен.

Заполните таблицу экзаменов произвольными оценками (отл, хор, уд, неуд).

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

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

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

Задача 4. Создайте запрос для удаления из таблицы "Студенты" записей с номером группы=198 или 298 (закончивших обучение). Если таких студентов нет в вашей таблице, внесите изменения в исходные данные.

Так как таблица "Студенты" связана по номеру студента с таблицами "Стипендия" и "Экзамены", то необходимо удалять записи и из этих таблиц. Для этого в схеме данных нужно изменить эти связи, установив параметр каскадное удаление связанных полей. После этого, если запись удаляется в таблице "Студенты", автоматически удалятся все связанные с ней записи в таблицах "Стипендия" и "Экзамены".

Конструктор: выбрать тип запроса удаление.

Выполнить запрос.

Запросы на обновление 

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

Задача 5. Создайте запрос на обновление для заполнения полей [дата] и [экзаменатор] в таблице "Экзамены".

Конструктор: тип запроса обновление.

В строке обновление указывается новое значение соответствующего поля.

Код плана и номер группы в условии отбора задайте в соответствии со своими данными.

Выполните запрос.

Результатом запроса является изменение данных в таблице "Экзамены". Откройте таблицу и посмотрите, какие произошли изменения.

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

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

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

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

Конструктор:

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

Так как оценки заданы текстовыми значениями "отл", "хор", "уд" или "неуд", возможно и Null значение, то для вычисления минимальной оценки необходимо выполнить преобразование к соответствующим числовым значениям. Используя функцию iif(), преобразуем  "отл" =5, "хор"=4, "уд"=3, любые другие значения =2.

Миноценка: Min(IIf([оценка]="отл";5;IIf([оценка]="хор";4;IIf([оценка]="уд";3;2))))

Этап 2. Преобразовать запрос на выборку в запрос на создание таблицы.

Для этого:

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

Выполните запрос.

Откройте таблицу "Сессия" и посмотрите результат.

Если внести изменения таблицу "Экзамены", то содержимое таблицы "Сессия" автоматически изменяться не будет. Чтобы ее изменить, нужно снова выполнить запрос "создание таблицы сессия".

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

Задача 9. Создайте запрос "стипендия 4" на обновление стипендий всех хорошистов по результатам последней сессии.

Задача 10. Создайте запрос "стипендия 23" на обновление стипендий всех, сдавших экзамены на 3 или 2 по результатам последней сессии.

ТРЕБОВАНИЯ К ОТЧЕТУ

Отчет по лабораторной работе должен содержать:

  •  цель работы,
  •  ответы на вопросы теоретической части,
  •  перечень выполненных задач (распечатка или описание результатов).


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

Язык SQL

ЦЕЛЬ РАБОТЫ. Изучение и создание SQL - запросов в СУБД Microsoft Access.

Теоретическая часть

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

  •  SQL;
  •  группы инструкций SQL;
  •  основные инструкции SQL для создания запросов.

Задания для выполнения

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

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

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

  1.  Создать новый запрос в режиме конструктора.
  2.  Переключиться в режим SQL ( меню Вид/режим SQL) и отредактировать запрос.
  3.  Выполнить запрос, проанализировать результат и записать для отчета.

Задача 1.

SELECT  дисциплина, семестр, [шифр специальности]

FROM [Учебный план]

WHERE  [шифр специальности]=[введи шифр специальности]

ORDER BY  семестр;

Задача 2.

SELECT [Учебный план].[код плана],

Count(Экзамены.оценка) AS [Количество студентов]

FROM [Учебный план] LEFT JOIN Экзамены

ON [Учебный план].[код плана] = Экзамены.[код плана]

GROUP BY [Учебный план].[код плана];

Задача 3.

SELECT Студенты.[шифр специальности], Студенты.[номер группы], [Учебный план].дисциплина,

Avg(IIf([оценка]="отл",5,IIf([оценка]="хор",4,IIf([оценка]="уд",3,2)))) AS [успеваемость]

FROM [Учебный план]

INNER JOIN (Студенты INNER JOIN Экзамены

ON Студенты.[номер студента] = Экзамены.[номер студента])

ON [Учебный план].[код плана] = Экзамены.[код плана]

GROUP BY Студенты.[шифр специальности], Студенты.[номер группы],[Учебный план].дисциплина;

Задача 4.

INSERT INTO Экзамены ( [номер студента], [код плана] )

SELECT  Студенты.[номер студента], 1 AS код

FROM Студенты

WHERE (Студенты.[шифр специальности]="рс") AND (Студенты.[номер группы]=101);

Задача 5.

DELETE Студенты.*

FROM Студенты

WHERE Студенты.[номер группы] is Null;

Задача 6.

UPDATE Стипендия SET Стипендия.[стипендия] = [стипендия]*1.2;

Задача 7.

SELECT TOP 1 [номер студента], Фамилия, Имя, Отчество, [шифр специальности], [номер группы], [дата рождения]

FROM Студенты

ORDER BY [дата рождения] ASC;

Задача 8.

DELETE Студенты.*

FROM Студенты

WHERE [номер студента] IN (SELECT [номер студента]

FROM  Экзамены

WHERE оценка="неуд"

GROUP BY [номер студента]

HAVING Count(оценка)>2);

Задача 9.

SELECT Студенты.[номер студента], Студенты.[Фамилия], Стипендия.[стипендия]

FROM Студенты INNER JOIN Стипендия

ON Студенты.[номер студента] = Стипендия.[номер студента]

WHERE Стипендия.[стипендия]=

(SELECT max([стипендия]) AS maxстипендия

FROM стипендия);

ТРЕБОВАНИЯ К ОТЧЕТУ

Отчет по лабораторной работе должен содержать:

  •  цель работы,
  •  ответы на вопросы теоретической части,
  •  перечень выполненных задач (текст запроса, его назначение и подробный комментарий к каждому предложению SQL).


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

Отчеты

ЦЕЛЬ РАБОТЫ. Изучить создание отчетов в СУБД Microsoft Access .Создать отчеты для базы данных "Учебный процесс".

Теоретическая часть

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

Задания для выполнения

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

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

Создавать отчет удобно с помощью мастера, а затем при необходимости откорректировать в конструкторе.

Задача 1. Создайте отчет для печати ведомостей на выплату стипендии.

Примерный вид ведомости:

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

группа:   Э 101

Фамилия

Инициалы

стипендия

номер студенческого билета

1

Баскакова

И.Б

300,00

21040

2

Крайнова

С.Б

300,00

21045

3

Краснова

С.Б

300,00

21047

Итого по группе:                                900,00

Для создания такой ведомости нужно:

  1.  Создать запрос на выборку необходимых для ведомости данных. Такой запрос уже создан в лабораторной работе №2 ( запрос для ведомости стипендии – задача 8).
  2.  Запустить мастер создания отчета (создание отчета с помощью мастера).
  3.  Выбрать источник данных – запрос для ведомости стипендии. Из появившегося списка полей выбрать нужные поля, в нашем случае нужны все поля запроса. <Далее>
  4.  Выбрать уровни группировки данных, т.е. поля, по значениям которых данные будут объединяться в группы. В нашем случае данные в ведомости будут объединяться по учебным группам. Имя группы состоит из полей [шифр специальности] и [номер группы] – их и нужно выбрать. <Далее>
  5.  Указать порядок сортировки данных в группе. Данные в ведомости нужно упорядочить по фамилиям (по афавиту). Задать итоговые вычисления суммы стипендий (нажать кнопку <Итоги>). <Далее>
  6.  Выбрать наиболее подходящие вид макета и стиль отчета.<Готово>

Созданный отчет нужно отредактировать в режиме конструктора.

Приведите ваш отчет к следующему виду:

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

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

  •  Поместите в верхний колонтитул надпись: Ведомость на выплату стипендии. Надпись будет выводиться на каждой странице.
  •  Удалите заголовок и примечание отчета (меню Вид / Заголовок/примечание отчета).
  •  Удалите надпись, связанную с полем  [шифр специальности].
  •  Перенесите поле [шифр специальности] в заголовок группы'[номер группы]'  (т.е. ниже на один уровень) и поместите его на одной строке с полем [номер группы].
  •  Для изменения уровней группировки, добавления/удаления заголовков и примечаний групп нужно использовать меню Вид/Сортировка и группировка. Удалите заголовок и примечание группы '[шифр специальности]'.

  •  Для задания порядкового номера студента нужно: в область данных добавить с панели элементов управления свободное поле, рядом с полем автоматически создается поясняющая надпись, перенести надпись из области данных в заголовок группы (копировать –вставить) и поместить ее над полем, изменить текст надписи: №, задать свойства поля: данные  =1, сумма с накоплением  для группы.
  •  Для печати ведомости каждой учебной группы на отдельном листе нужно выделить зону Примечание группы '[номер группы]' и  в её свойствах  задать конец страницы после раздела.


Задача 2. Создайте отчет для печати ведомостей неуспевающих (получивших неудовлетворительные оценки).

Примерный вид отчета:

 ведомость неуспевающих

группа:_________ Э  -  101

номер студенческого билета:    21047

 Фамилия: Краснова

 Имя: Светлана

 Отчество: Борисовна

  

семестр  дисциплина оценка

 1 физика неуд

 1 математика неуд

 всего долгов: 2

Данные группируются по трем уровням: [шифр специальности], [номер группы], [номер студента].

Для подсчета количества долгов для каждого студента нужно в разделе заголовок группы 'номер студента'  либо в разделе примечание группы 'номер студента' задать вычисляемое поле, содержащее формулу =Count([оценка]).

Задача 3. Создайте отчет для печати экзаменационных ведомостей.

Каждая ведомость должна быть на отдельной странице.

Примерный вид ведомости:

Экзаменационная ведомость

Дисциплина: физика

Группа Э-101

Номер студента

Фамилия

Имя

Отчество

Оценка

Дата

Экзаменатор

21040

Баскакова

Ирина

Борисовна

отл

03.06.2003

Красавин

21045

Крайнова

Светлана

Борисовна

хор

04.06.2003

Красавин

21047

Краснова

Светлана

Борисовна

уд

03.06.2003

Красавин

ТРЕБОВАНИЯ К ОТЧЕТУ

Отчет по лабораторной работе должен содержать:

  •  цель работы;
  •  ответы на вопросы теоретической части;
  •  перечень выполненных задач.


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

Формы для отображения данных

ЦЕЛЬ РАБОТЫ. Изучить создание форм для отображения данных в СУБД Microsoft Access. Создать формы для отображения данных в базе данных "Учебный процесс".

Теоретическая часть

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

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

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

Создание и работа с формами осуществляется по аналогии с другими объектами Access.

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

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

В дальнейшем форму можно отредактировать в  режиме конструктора.

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

С помощью мыши можно изменить расположение элементов формы, их размеры.

Используя панель инструментов, можно изменить цвет, шрифт, оформление элементов. Чтобы изменить вид элемента, его сначала нужно выделить при помощи мыши.

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

Чтобы удалить элемент, его нужно выделить и нажать клавишу <Delete> на клавиатуре.

Добавить в форму новые элементы можно с помощью панели элементов.

  1.  Выбор объектов.
  2.  Мастер.
  3.  Надпись.
  4.  Поле.
  5.  Группа переключателей.
  6.  Выключатель.
  7.  Переключатель.
  8.  Флажок.
  9.  Поле со списком.
  10.  Список.

  1.  Кнопка.
  2.  Рисунок.
  3.  Свободная рамка объекта.
  4.  Присоединенная рамка объекта.
  5.  Разрыв страницы.
  6.  Набор вкладок.
  7.  Подчиненная форма/отчет.
  8.  Линия.
  9.  Прямоугольник.
  10.  Дополнительные элементы

Задания для выполнения

Создание простой формы

Задача 1. Создайте форму для отображения данных о студентах.

Для создания формы используйте мастер.

Источник данных: таблица "Студенты", все поля.

Вид формы: в один столбец.

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

Задание. Добавьте нового студента, используя созданную форму.

Форма с подчиненной

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

Создание формы с подчиненной с помощью мастера

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

Для создания формы используйте мастер.:

1. Источник данных: таблица "Учебный план"(все поля), таблица "Специальности" (все поля).

2. Вид представления данных: подчиненные формы.

3. Вид подчиненной формы: ленточный.

4. Стиль стандартный.

5. Задайте имя формы: Форма1-Учебный план по специальностям подчиненной формы: учебный план-подчиненная для формы1

Должна получиться форма следующего вида:

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

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

Создание формы с подчиненной в конструкторе

Задача 3. Создайте форму в которой для каждого студента отображаются все его оценки из таблицы "Экзамены".

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

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

Форме дайте имя: оценки-подчиненная для формы

2. Задайте свойства формы в разделе "данные":

  •  разрешить изменение: да,
  •  разрешить удаление: да,
  •  разрешить добавление: нет.
  1.  Откройте форму "Студенты", созданную в задаче1, в режиме конструктора. Сохраните её под именем "Форма2-Студенты и их оценки".
  2.  Размеры формы можно увеличить. На панели элементов управления нужно выбрать объект подчиненная форма и поместить его на форму. Если установлен мастер создания подчиненной формы, то выполнить его, указав в качестве подчиненной форму "оценки- подчиненная для формы2". Если мастер не установлен:
    •  создать свободный внедренный объект,
    •  удалить связанную с объектом надпись "внедренный",
    •  в свойствах объекта указать объект-источник и связываемые поля:

  •  задать имя объекта: оценки-подчиненная для формы 2.

Отрегулируйте размер подчиненной формы для полного и удобного отображения данных.

В результате должна получиться форма следующего вида (конструктор):

Задача 4. Добавить в "Форму 2" кнопки для поиска и удаления студентов и список для выбора оценок.

В результате должна получиться форма вида (режим формы):

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

1. Открыть форму в конструкторе.

2. Создание списка оценок:

  •  выделить поле [оценка];
  •  в контекстном меню выбрать пункт преобразовать элемент в/ поле со списком;
  •  в свойствах элемента задать тип источника строк: список значений, источник строк : отл; хор; уд; неуд, то есть все возможные оценки.

3. Создание кнопок:

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

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

4. Используя созданную форму, найдите какого-либо студента по его фамилии и отредактируйте его оценки. Занесите данные о новом студенте (произвольный набор данных), а затем удалите его с помощью кнопки удалить запись.

Использование свободных полей на форме

Задача 5. Создать форму для отображения студентов по специальностям и учебным группам.

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

  1.  Создать форму в столбец на основе таблицы "Специальности".
  2.  Дать форме имя: Форма3 – студенты по группам.
  3.  В конструкторе добавить с панели элементов свободное поле, оно будет служить для ввода номера группы. Дать полю имя: ВводНомерГруппы. В надписи рядом с полем написать: "введи номер группы".

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

объект-источник: Форма 2 – студенты и их оценки

подчиненные поля: [шифр специальности]; [номер группы]

основные поля: [шифр специальности]; [Ввод Номер Группы],

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

В итоге должна получиться форма вида:

ТРЕБОВАНИЯ К ОТЧЕТУ

Отчет по лабораторной работе должен содержать:

  •  цель работы;
  •  ответы на вопросы теоретической части;
  •  перечень выполненных задач.


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

Макросы. Управление приложением

ЦЕЛЬ РАБОТЫ. Изучить создание макросов в СУБД Microsoft Access. Создать главную форму приложения "Учебный процесс". Создать макросы для главной формы, для отображения добавления результатов экзаменов. Связать макросы с кнопками на формах.

Теоретическая часть

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

Создаваемое приложение "Учебный процесс", уже позволяет решать многие задачи. Но кроме решения поставленных задач при создании приложения должно выполняться ещё одно требование - приложение должно быть удобным для пользователя, т.е. легко управляемым.

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

Задания для выполнения

Задача 1. Создайте "Главную форму" приложения следующего вида:

Порядок создания.

1. Главная форма не содержит данных, поэтому использовать для её создания мастер не имеет смысла. Создайте форму в режиме конструктора.

2. Растяните форму до нужного размера. Задайте цвет фона (произвольный). В левой части формы поместите рисунок (произвольный).

3. В правой части формы поместите элемент группа переключателей () с панели элементов. Далее, если установлен мастер, задать все пять переключателей в этой группе. Если мастер не установлен, переносить переключатели в группу с панели элементов по одному. Рядом с каждым переключателем задать нужную подпись. Обратите внимание, все переключатели, помещенные в группу, автоматически нумеруются. В свойствах каждого переключателя должно быть задано данные/ значение параметра: <номер> (от 1 до 5). Задайте имя группы переключателей в свойствах/ Другие/ Имя: Главная Группа. Надпись над группой переключателей удалите.

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

5. Поместите на форму кнопку "ОК", нажатие на которую должно запускать задачу, соответствующую выбранному переключателю. Такую кнопку нельзя создать автоматически с помощью мастера. Для неё нужно написать специальный макрос или процедуру обработки события. Оставьте пока эту кнопку свободной, т.е. ни с чем не связанной.

Создайте макрос для главной формы.

Конструктор макроса содержит:

Столбец Условие – содержит условия (для отображения столбца выбрать в меню Вид/Условия или соответствующую кнопку на панели инструментов). Если условие истинно, выполняется макрокоманда, содержащаяся в данной строке.

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

Столбец Примечание – описание макрокоманд, которое помогает понять, что именно выполняет макрос. Эти примечания необязательны, но при их отсутствии трудно разобраться в давно созданных макросах.

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

Вид макроса для главной формы в режиме конструктора:

Порядок создания макроса:

  •  [Главная Группа] – это имя группы переключателей. Условие [Главная Группа]=1 означает, что выбран первый переключатель. В столбце "макрокоманда" выбрать команду открыть форму. В аргументах макрокоманды выбрать имя открываемой формы: Форма3 –Студенты по группам;
  •  аналогично вторая макрокоманда открывает Форму1-Учебный план по специальностям;
  •  форма для выполнения третьей задачи пока не создана, поэтому выбрать макрокоманду сообщение, а в аргументах задать текст сообщения: задача пока не реализована;
  •  задача четвёртая открывает для просмотра отчет "ведомость неуспевающих". В аргументах указать имя отчета и режим: просмотр.
  •  пятая макрокоманда открывает для просмотра отчет "ведомость стипендии";
  •  созданный макрос сохранить под именем: макрос для главной формы.

Созданный макрос необходимо связать с нажатием кнопки "ОК" на главной форме.

Для этого:

  •  открыть главную форму в режиме конструктора;
  •  открыть свойства кнопки "ОК";
  •  в свойствах События/ Нажатие кнопки задать имя макроса: макрос для главной формы. Таким образом, при нажатии кнопки будет выполняться указанный макрос.

Проверьте работу созданной главной формы.

Задача 2. Добавить на "форму1-учебный план по специальностям" свободное поле для ввода номера группы и кнопку [результаты экзамена] для отображения результатов выбранного экзамена в выбранной группе.

Свободному полю дайте имя: ПолеНомерГруппы.

Кнопку оставьте пока свободной, т.е. ни с чем не связанной. Для неё далее нужно будет создать макрос.

Задача 3. Создайте форму для отображения результатов экзамена.

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

Вид формы в режиме конструктора: (одиночная ленточная форма).

Задайте имя формы: экзамены - связана с формой1.

Задайте в свойствах формы модальное окно: да.

Поле оценка преобразуйте в поле со списком.

Задача 4. Создайте макрос для кнопки "результаты экзамена" на форме1.

Конструктор макроса:

Макрос состоит из одной команды: ОткрытьФорму.

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

([номер группы]=[Forms]![Форма1-учебный план по специальностям]![ПолеНомерГруппы]) And ([код плана]=[Forms]![Форма1–учебный план по специальностям]![учебный план-подчиненная для формы1].Form![код плана]).

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

Макрос сохранить под именем: макрос результаты экзамена.

Созданный макрос нужно связать с нажатием кнопки "результаты экзамена" на форме1.

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

ТРЕБОВАНИЯ К ОТЧЕТУ

Отчет по лабораторной работе должен содержать

  •  цель работы,
  •  ответы на вопросы теоретической части,
  •  перечень выполненных задач.
  •  

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

Приложение

"Учебный процесс" (продолжение работы)

ЦЕЛЬ РАБОТЫ. Создание форм, запросов и макросов, реализация поставленных задач.

Задания для выполнения

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

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

Задача 1. Добавить на форму "экзамены-связана с формой 1" две кнопки: для добавления экзамена и печати ведомости стипендии. Для каждой из кнопок создать запрос и макрос.

Кнопка "добавить экзамен".

Создание запроса:

В лабораторной работе №3 был создан запрос (задача 1), позволяющий добавить в таблицу "Экзамены" информацию об одном экзамене: поля номер студента, код плана экзамена, дата и экзаменатор для студентов из одной учебной группы.

Откройте этот запрос в конструкторе.

Сохраните под именем "добавление экзамена для формы1".

Отредактируйте запрос.

Запрос в режиме конструктора: (обратите внимание, данные отображены не полностью)

Запрос в режиме SQL:

PARAMETERS [введи дату экзамена] DateTime, [введи экзаменатора] Text (50);

INSERT INTO Экзамены ( [номер студента], [код плана], дата, экзаменатор)

SELECT Студенты.[номер студента],

[Forms]![Форма1-учебный план по специальностям]![учебный план-подчиненная для формы1].Form![код плана] AS В1,

[введи дату экзамена] AS В2,

[введи экзаменатора] AS В3

FROM Студенты

WHERE  Студенты.[шифр специальности]=[Forms]![Форма1-учебный план по специальностям]![шифр специальности]

AND Студенты.[номер группы])=[Forms]![Форма1-учебный план по специальностям]![ПолеНомерГруппы];

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

В поле [код плана] будет добавлено значение [Forms]![Форма1-учебный план по специальностям]![учебный план-подчиненная для формы1].Form![код плана], то есть значение кода плана, выбранное в данный момент пользователем на форме1 в подчиненном учебном плане. Чтобы не ошибиться в написании выражения, воспользуйтесь построителем выражений в режиме конструктора.

В поле [номер студента] в таблице "Экзамены" данные добавляются из [Студенты].[номер студента] для всех записей, выбранных в соответствии с условием отбора.

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

Так как этот запрос использует данные с формы1, то выполнить его можно, если эта форма открыта.

Создание макроса для добавления экзамена:

Макрос состоит из двух команд:

  •  открытие запроса "добавление экзамена для формы1" добавляет новые записи в таблицу "Экзамены";
  •  запуск макроса результатов экзамена нужен чтобы обновить содержимое формы "экзамены-связана с формой1", отобразить новые добавленные записи.

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

Кнопка "печать экзаменационной ведомости".

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

Для решения поставленной задачи нужно сформировать соответствующий отчет, а затем с нажатием кнопки связать действие: просмотр отчета.

Создание отчета.

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

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

Для выбора ведомости нужно добавить условие отбора:

WHERE [Учебный план].[код плана])=[Forms]![Форма1-учебный план по специальностям]![учебный план-подчиненная для формы1].Form![код плана]

AND Студенты.[шифр специальности] =[Forms]![Форма1-учебный план по специальностям]![шифр специальности]

AND Студенты.[номер группы])=[Forms]![Форма1-учебный план по специальностям]![ПолеНомерГруппы]

Задача 2. Создать форму для реализации третьей задачи главной формы: изменение стипендии.

Форме дать имя: Форма4-Изменение стипендии.

Конструктор формы:

С нажатием кнопки "добавить новых студентов" должен быть связан запрос на добавление номеров новых студентов в таблицу стипендия. Этот запрос был создан в лабораторной работе №3.

С нажатием кнопки "обновить стипендию по результатам сессии" должна быть связана следующая последовательность действий (макрос для обновления стипендии):

  •  создать таблицу с результатами сессии. Для создания такой таблицы в лабораторной работе№3 был создан запрос "создание таблицы сессия" (задача7). Нужно изменить этот запрос, чтобы даты начала и окончания сессии выбирались с формы4. В макросе задать команду для выполнения запроса "создание таблицы сессия";
  •  в соответствии с полученными результатами обновить стипендии, то есть выполнить созданные ранее запросы "стипендия5", "стипендия4", "стипендия23".

Задача 3. Изменить макрос для главной формы.

При условии [Главная Группа]=3 задать макрокоманду ОткрытьФорму, имя формы: Форма4-Изменение стипендии.

Задача 4. Настроить приложение "Учебный процесс" так, чтобы "Главная форма" открывалась автоматически  при запуске приложения.

Для этого нужно выбрать пункт меню Сервис/Параметры запуска и задать параметры:

Задача 5. Задать пароль для открытия приложения "Учебный процесс".

Для этого нужно:

  •  закрыть рабочее приложение;
  •  открыть своё приложение "Учебный процесс" монопольно: меню Файл/ Открыть/ Монопольно;

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

Закройте приложение и откройте его заново.

Проверить работу всех задач созданного приложения.

ТРЕБОВАНИЯ К ОТЧЕТУ

Отчет по лабораторной работе должен содержать:

  •  цель работы;
  •  ответы на вопросы теоретической части;
  •  перечень выполненных задач;
  •  описание созданного приложения – инструкция для пользователя.

Домашнее задание 1

Тема: Язык SQL. Запросы на выборку

и изменение данных

Напишите на языке SQL следующие запросы для созданной на лабораторных работах базы данных "Учебный процесс".

Вариант 1

  1.  Выбрать всех студентов, родившихся в январе, и вывести их ФИО, учебную группу и дату рождения.
  2.  Выбрать данные для экзаменационной ведомости (поля: шифр специальности, номер группы, дисциплина, номер студента, фамилия, имя, отчество, оценка) по какой-либо дисциплине для какой-либо учебной группы.
  3.  Выбрать информацию о самом младшем студенте.
  4.  Подсчитать и вывести средний балл  для каждого студента.
  5.  Подсчитать и вывести средний балл по математике в какой-либо учебной группе. Ввод группы запрашивается при запуске запроса.
  6.  Подсчитать и вывести количество студентов, обучающихся на каждой специальности.
  7.  Подсчитать и вывести количество студентов, не имеющих телефона.
  8.  Перевести всех студентов из группы Э-201 в группу Э-101, то есть изменить для них номер группы.
  9.  Увеличить стипендию всем старостам групп на 100 рублей.
  10.  Выбрать специальности (шифр специальности), для которых не задано ни одного студента.
  11.  Удалить записи о студентах, получивших в сессию хотя бы один "неуд".
  12.  Создать таблицу "Архив", содержащую данные обо всех студентах, закончивших обучение (определить по номеру группы), и их оценки.

Вариант 2

  1.  Выбрать данные обо всех совершеннолетних студентах.
  2.  Выбрать все данные, имеющиеся в базе данных, о каком-либо конкретном студенте и его успеваемости. Фамилия студента задается во время выполнения запроса.
  3.  Выбрать всех студентов, не сдавших два или больше экзаменов в сессию.
  4.  Подсчитать и вывести средний балл  для каждой дисциплины.
  5.  Подсчитать и вывести количество студентов на любом курсе независимо от специальности.
  6.  Подсчитать и вывести количество студентов в каждой учебной группе, получивших по математике "отлично".
  7.  Подсчитать и вывести количество сданных экзаменов для каждого студента.
  8.  Подсчитать и вывести сумму стипендий для каждой учебной группы.
  9.  Увеличить  стипендию на 200 руб. всем иногородним студентам
  10.  Удалить записи о специальностях, для которых не задано ни одного студента.
  11.  Выбрать студентов (номера студентов), получивших в сессию хотя бы один "неуд".
  12.  Задать нулевую стипендию всем студентам, получившим в сессии хотя бы один "неуд".

Домашнее задание 2

Тема: Проектирование базы данных

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

  1.  Постановка задачи: описание предметной области, задачи пользователей, входные и выходные документы, описание информационных объектов, данные о которых должны содержаться в базе.
  2.  Концептуальная модель базы данных в виде ER-диаграммы (диаграммы "сущность - связь").
  3.  Логическая модель для реляционной базы данных.

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

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

  1.  Описание структуры таблиц. Описать каждую таблицу базы данных по следующей схеме:

Имя поля

Тип

Размер

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

Индексированное поле

Ключевое поле

СОДЕРЖАНИЕ

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

СУБД Microsoft Access. Таблицы…………………………..

3

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

Запросы на выборку …………………………………………

11

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

Запросы на изменение данных и создание таблиц…...

20

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

Язык SQL…………………………………………………………

27

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

Отчеты…………………………………………………………….

30

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

Формы для отображения данных………………………….

34

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

Макросы. Управление приложением……………………...

43

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

Приложение "Учебный процесс" (продолжение

работы)……………………………………………………………...

48

Домашнее задание №1…………………………………..

53

Домашнее задание №2…………………………………..

54




1. а 207 206 204 106Балетка 102дискозал Кор201203
2. Растворимость солей, кислот и оснований в воде (таблица)
3. к~ш векторы ~серімен жылжыту кезіндегі жасалатын ж~мысты~ м~лшері векторлы~ ~рісті~ дивергенциясын та
4. Задание 2 Оценка загрязнения поверхностных вод Цель работы- освоить методику расчета загрязнения повер
5. маленькая женушка
6.  Исходные данные на проектирование 1 2
7. три урока физкультуры в неделю в школе
8. Понятие валютных рисков 1
9. Назначение основных видов ППО
10. ЗАДАНИЕ по дисциплине- БИОХИМИЯ