- •Управление данными
- •Шаптала в.В.
- •Введение
- •Основные понятия
- •Идентификация строк (первичный ключ)
- •Общие сведения о субд Access
- •Сортировка данных
- •Отбор данных с помощью фильтра
- •Содержание работы
- •Контрольные вопросы
- •Порядок выполнения работы
- •Структура таблицы “Студенты”
- •Состав кафедры информационных технологий
- •Состав кафедры математики
- •Состав кафедры физики
- •Структура таблицы Группы_дисциплины
- •Исходные данные для таблицы Группы_дисциплины
- •Задание 4. В базе данных необходимо хранить информацию о результатах сдачи студентами сессии.
- •Содержание отчета
- •Контрольные вопросы
- •Простые запросы на выборку
- •Основные понятия
- •Вывод с сортировкой – предложение order by
- •Выборка из таблицы с условием - предложение where
- •Поиск подстрок – оператор like
- •Содержание работы
- •Содержание отчета
- •Контрольные вопросы
- •Функции агрегирования
- •Основные понятия
- •Группировка данных
- •Отбор групп
- •Содержание работы
- •Содержание отчета
- •Использование агрегатных функций в подзапросах
- •Подзапросы с exists и not exists
- •Содержание работы.
- •Содержание отчета
- •Обновление таблиц
- •Прямое обновление
- •Обновление с подзапросом
- •Удаление данных
- •Простое удаление
- •Удаление с подзапросом
- •Отделение данных от приложения
- •Режимы открытия базы данных
- •Период обновления
- •Блокировка
- •Оптимистическая блокировка
- •Пессимистическая блокировка
- •Блокировка и формы
- •Транзакции
- •Содержание работы
- •Содержание отчета
- •Контрольные вопросы
- •Защита приложений Access на уровне рабочих групп
- •Основные понятия
- •Рабочие группы
- •Создание новой рабочей группы
- •Учетные записи пользователей и групп
- •Идентификаторы pid и sid, пароли
- •Характеристики пользователей и групп
- •Предоставление разрешений
- •Административные права доступа
- •Право на владение объектами базы данных
- •Удаление учетной записи
- •Шифрование баз данных Jet
- •Содержание работы
- •Содержание отчета
- •Репликация
- •Синхронизация
- •Устранение конфликтов
- •Типы конфликтов
- •Видимость реплик
- •Частичные реплики
- •Реплики с запрещенным удалением
- •Управление репликацией посредством меню Access
- •Меню репликации Access
- •Защита реплицированной базы данных
- •Содержание работы
- •Создание редактируемой страницы
- •Создание группы
- •Добавление еще одного уровня группировки
- •Формирование итоговых данных
- •Анализ данных
- •Публикация страниц в папках Web или на web-сервере.
- •Содержание работы
- •Преимущества архитектуры клиент-сервер
- •Надежность и защита данных
- •Производительность
- •Создание проектов Access
- •Создание хранимых процедур
- •Синтаксис хранимых процедур
- •Параметры и переменные
- •Выполнение хранимых процедур
- •Создание триггеров
- •Синтаксис триггеров
- •Таблицы Inserted и deleted
- •Транзакции и оператор Raiseerror
- •Защита проектов Access (adp)
- •Содержание работы
- •Реализовать следующие функции системы Функции библиотекаря.
- •Функции читателя
- •2. Автоматизация поликлиники – выдача талонов
- •3. Автоматизация кадрового агенства Описание основных сущностей
- •Реализовать следующие функции системы: Функции менеджера агентства
- •4. Автоматизация книжного магазина. Описание основных сущностей
- •Реализовать следующие функции системы: Функции менеджера магазина.
- •Функции покупателя
- •Реализовать следующие функции программы
Содержание работы
Для выполнения этой и следующих работ схема данных должна иметь вид, приведенный в приложении 1.
1. Создайте следующие запросы:
а) Найти всех студентов с фамилией Иванов и телефоном на 41.
б) Вывести названия групп и фамилии преподавателей, преподающих в этих группах физику.
в) Получить список групп, в которых преподает преподаватель Миронов.
2. Введите следующие запросы в режиме конструктора. Объясните их смысл.
а)
SELECT группы.название, дисциплины.название
FROM дисциплины INNER JOIN
(группы INNER JOIN группы_дисциплины
ON группы.код = группы_дисциплины.код_группы)
ON дисциплины.код = группы_дисциплины.код_дисц;
б)
SELECT Фамилия, Имя, Отчество
FROM Преподаватели, Кафедры
WHERE Преподаватели.код_каф = Кафедры.код
AND Кафедры.название = "математика"
в)
SELECT DISTINCT Фамилия, Имя
FROM студенты, группы, сессия
WHERE студенты.код = сессия.код_студ AND
студенты.код_группы = группы.код AND
сессия.оценка = 5
г)
SELECT группы.название, дисциплины.название, группы_дисциплины.часов
FROM
дисциплины INNER JOIN (группы INNER JOIN группы_дисциплины ON группы.код = группы_дисциплины.код_группы)
ON дисциплины.код = группы_дисциплины.код_дисц
WHERE группы.название = "Гр1";
Содержание отчета
Запишите текст созданных запросов.
Приведите ответы на контрольные вопросы.
Контрольные вопросы
С использованием какой команды SQL конструируются запросы на выборку? Объясните формат записи этой команды.
Какими способами в Access можно конструировать запросы?
Какими способами можно записывать запросы с соединением?
Какой способ соединения таблиц используется при создании запроса с помощью конструктора?
Лабораторная работа № 4
Функции агрегирования
Цель работы: получить представление о способах использования агрегатных функций внутри запросов на выборку.
Основные понятия
Агрегатные функции применяются для обобщения значений одного поля таблицы. Они дают единственное значение для целой группы строк таблицы.
Ниже приводится список этих фунцкий:
COUNT определяет количество строк или значений поля, выбранных посредством запроса и не являющихся NULL-значениями.
Пример 1.
Сколько всего студентов в базе данных ?
SELECT COUNT(*) AS [количество студентов]
FROM студенты;
Рис. 4.1. Подсчет общего количества строк в таблице студенты
SUM вычисляет арифметическую сумму всех выбранных значений данного поля.
Пример 2.
Посчитать количество часов учебной нагрузки у преподавателя c кодом 1.
SELECT Sum(группы_дисциплины.часов)
FROM группы_дисциплины
WHERE группы_дисциплины.код_преп = 1
AVG вычисляет среднее арифметическое всех выбранных значений данного поля.
Пример 3.
Вычислить средний балл для всех студентов по математике:
SELECT AVG(оценка) AS [средняя оценка]
FROM сессия INNER JOIN дисциплины
ON сессия.код_дисц = дисциплины.код
WHERE название = 'Математика'
Рис. 4.2. Подсчет средней оценки по математике
MAX, MIN – возвращают максимальное и минимальное значения из всех выбранных значений данного поля.
Пример 4.
Поиск максимального кода студента
SELECT MAX(код)
FROM студенты
Аналогично функции MAX работает функция MIN.