Файл: Конспект лекций по учебной дисциплине по дисциплине мдк. 02. 02. Технология разработки и защиты баз данных.doc
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 26.04.2024
Просмотров: 194
Скачиваний: 2
СОДЕРЖАНИЕ
ПОЯСНЕНИЯ К НАПИСАНИЮ КОНСПЕКТА
Раздел 1 Основы теории баз данных.
Тема: Понятие базы данных, системы управления баз данных.
Тема: Классификация баз данных. Архитектура баз данных.
Тема: Администратор базы данных и его функции. Пользователи баз данных.
Тема: Понятие о моделировании данных
Тема: Иерархическая модель данных. Сетевая модель данных.
Раздел 3 Реляционная модель данных.
Тема: Основные понятия реляционной модели данных.
Тема: Инфологическая модель данных.
Проектирование инфологической модели данных
Тема: ER моделирование базы данных.
Раздел 4. Основы реляционной алгебры.
Тема: Реляционная алгебра. Операции: объединение, пересечение, разность, декартово произведение
Тема: Выборка, проекция, соединение, деление
Тема: Применение реляционной алгебры.
Раздел 5. Этапы проектирования базы данных.
Тема: Этапы проектирования базы данных.
Тема: Концептуальное моделирование предметной области.
Тема: ER моделирование предметной области.
Тема: Методы создания основных объектов
Тема: Создание таблиц в СУБД Access
Тема: Разработка схемы базы данных
Тема: Создание однотабличных запросов в СУБД Access.
Тема: Создание многотабличных запросов в СУБД Access.
Тема: Основные понятия и компоненты языка SQL.
Тема: Выражения, условия и операторы языка SQL.
Тема: Средства управления таблицами.
Тема: Средства управления данными.
Раздел 7. Оформление и работа с базой данных.
Тема: Типы и виды форм. Методы и средства создания.
Тема: Создание отчётов. Создание печатных форм отчётов
Тема: Макросы. Основные макрокоманды
Раздел 8. Распределенные, параллельные базы данных.
Тема: Основные условия и требования к распределённой обработке данных
1 Терминология распределенных баз данных
3 Принципы функционирования распределенной БД
1 Терминология распределенных баз данных
3 Принципы функционирования распределенной БД
Тема: Базовые архитектуры распределенных баз данных
Тема: Архитектура сервера баз данных
2 Архитектура «активный сервер баз данных»
3. Архитектура сервера приложений
2 Архитектура «активный сервер баз данных»
3. Архитектура сервера приложений
Тема: Доступ к базам данных в архитектуре «клиент-сервер»
Тема: Вычисление распределенных запросов.
Тема: Транзакции и целостность базы данных.
Тема: Триггеры и хранимые процедуры.
Тема: Безопасность данных. Управление правами доступа.
Тема: Обязательные методы защиты базы данных.
3 Поддержка мер обеспечения безопасности в языке SQL
3 Поддержка мер обеспечения безопасности в языке SQL
Рисунок 6.3 Схема данных
После установки связей между таблицами, окно Схема данных необходимо закрыть. Далее необходимо осуществить заполнение всех таблиц. Заполнение таблиц целесообразно начинать с таблицы Группы студентов, так как поле Код группы таблицы Студенты используется в качестве столбца подстановки для заполнения соответствующего поля таблицы Студенты.
3 Заполнение таблиц
Заполнение таблиц можно начать и с заполнения таблицы Студенты. В окне Базы данных выделяем нужную таблицу, затем выполняем щелчок на кнопке Открыть. На экране появится структура таблицы БД в режиме таблицы. Новая таблица состоит из одной пустой строки.
Заполнение производится по записям, т.е. вводится информация для всей строки целиком. Поле счетчика заполняется автоматически. После ввода первой записи пустая запись смещается в конец таблицы. Переход к следующему полю осуществляется нажатием клавиши ТаЬ.
Для заполнения поля MEMO в таблице (колонка Место рождения) нажимаем комбинацию клавиш
После заполнения таблица Студенты имеет следующий вид.
Аналогичным образом заполняются остальные таблицы: Группы Студентов, Успеваемость, Дисциплины.
В приложении Access применяются различные методы перемещения по таблице. Переходить от записи к записи можно с помощью: клавиш управления курсором; кнопки из области Запись, расположенной внизу таблицы в режиме таблицы; команды Правка - Перейти.. Для перемещения от поля к полю (слева направо) применяются клавиши Tab и Enter, а в обратном направлении Shift+Tab.
Поиск данных в таблице большого объема, который выполняется с помощью кнопок перехода, может занять много времени, поэтому для поиска и замены данных в полях необходимо использовать команду Правка - Найти. Откроется окно диалога. В поле Образец диалогового окна поиска указывается искомый объект и осуществляется поиск. Для замены данных в полях необходимо перейти на вкладку Замена.
После создания структуры таблиц, их заполнении и установки связей между таблицами можно приступать к построению запросов.
Контрольные вопросы
-
Нормализация базы данных. Правила нормализации. -
Типы данных MS Access. Какие типы данных не могут быть использованы при определении первичного ключа? -
Свойства полей (краткая характеристика). -
Для чего применяется индексирование полей? -
Отношения между таблицами. Установка связей между таблицами при создании схемы данных. -
Понятия "ключевое поле". Какие бывают ключевые поля? -
Для чего в каждой таблице задается первичный ключ? В чем различие между первичным и внешним ключом? -
Порядок формирования схемы БД. -
Нормализация базы данных. Правила нормализации.
ЛЕКЦИЯ 21
Тема: Создание однотабличных запросов в СУБД Access.
ПЛАН
1 Понятие запроса в СУБД Access
2 Свойства запросов
3 Создание запроса на выборку с помощью Мастера
4 Создание запроса на выборку с помощью Конструктора
5 Заполнение бланка запроса по образцу
ЛИТЕРАТУРА: [3], стр. 50 – 54
1 Понятие запроса в СУБД Access
Предположим, что на крупном предприятии есть огромная база данных Кадры, содержащая подробнейшие сведения о каждом сотруднике. Кроме формальной информации база может содержать и конфиденциальную, например, сведения о заработной плате. Вся эта информация хранится в базовых таблицах.
Работать с базой данных Кадры могут разные подразделения предприятия, и всем им нужны разные данные. Не все то, что положено знать службе безопасности предприятия, должно быть доступно главному врачу, и наоборот. Поэтому доступ пользователей к базовым таблицам закрывают.
Для доступа к данным есть другое, гораздо более гибкое и удобное средство — запросы. Для одной и той же таблицы можно создать множество разных запросов, каждый из которых сможет извлекать из таблицы лишь малую часть информации, но именно ту часть, которая в данный момент необходима. У сотрудника бухгалтерии должен быть запрос, который позволит определить, сколько дней в году по болезни отсутствовал тот или иной работник, но у него не должно быть запроса, позволяющего узнать, чем он болел и где лечился, а у главного врача такой запрос быть должен.
В результате работы запроса из общей исходной базы формируется результирующая таблица, содержащая часть общей информации, соответствующую запросу.
2 Свойства запросов
Важным свойством запросов является то, что при создании результирующей таблицы можно не только выбирать информацию из базы, но и обрабатывать ее. При работе запроса данные могут упорядочиваться (сортироваться), фильтроваться (отсеиваться), объединяться, разделяться, изменяться, и при этом никаких изменений в базовых таблицах может не происходить.
Результаты обработки сказываются только на содержании результирующей таблицы, а она имеет временный характер, и иногда ее даже называют моментальным снимком.
И еще одним ценным свойством запросов является их способность выполнять итоговые вычисления. Запрос может не только выдать результирующую таблицу, но и найти, например, среднее (наибольшее, наименьшее, суммарное и т. п.) значение по какому-то полю.
Начинающих пользователей баз данных часто удивляет отсутствие в таблицах элементарной возможности вставить новую запись между другими. Записи всегда добавляются только в конец базы. На вопрос, почему так происходит, ответ простой: потому что в упорядочении таблиц нет необходимости. Для этого существуют запросы. Совершенно неважно, под каким номером внесена в таблицу та или иная запись. Если нужно видеть ее в строго определенном месте (например, рядом с другими аналогичными), значит нужно создать запрос, который сгруппирует записи по заданному признаку.
Существует несколько типов запросов: на выборку, на обновление, на добавление, на удаление, перекрестный запрос, создание таблиц. Наиболее распространенным является запрос на выборку. Запросы на выборку используются для отбора нужной пользователю информации, содержащейся в таблицах. Они создаются только для связанных таблиц.
3 Создание запроса на выборку с помощью Мастера
При создании запроса необходимо определить:
-
Поля в базе данных, по которым будет идти поиск информации -
Предмет поиска в базе данных -
Перечень полей в результате выполнения запроса
В окне база данных выбрать вкладку Запросы и дважды щелкнуть на пиктограмме Создание запроса с помощью мастера, появится окно Создание простых запросов.
В окне мастера выбрать необходимую таблицу (таблицу - источник) из опции Таблицы и запросы и выбрать поля данных. Если запрос формируется на основе нескольких таблиц, необходимо повторить действия для каждой таблицы – источника.
Затем в окне Мастера надо выбрать подробный или итоговый отчет и щелкнуть на кнопке Далее. После этого необходимо задать имя запроса и выбрать один из вариантов дальнейшего действия: Открыть запрос для просмотра данных или Изменить макет запроса и нажать кнопку Готово. В результате чего получите готовый запрос.
4 Создание запроса на выборку с помощью Конструктора
С помощью конструктора можно создать следующие виды запросов:
-
Простой -
По условию -
Параметрические -
Итоговые
-
С вычисляемыми полями
Чтобы вызвать Конструктор запросов, необходимо перейти в окно базы данных. В окне база данных необходимо выбрать вкладку Запросы и дважды щелкнуть на пиктограмме Создание запроса в режиме конструктора. Появится активное окно Добавление таблицы на фоне неактивного окна «Запрос: запрос на выборку».
В окне Добавление таблицы следует выбрать таблицу – источник или несколько таблиц из представленного списка таблиц, на основе которых будет проводиться выбор данных, и щелкнуть на кнопке Добавить. После этого закрыть окно Добавление таблицы, окно «Запрос: запрос на выборку» станет активным.
Окно Конструктора состоит из двух частей – верхней и нижней. В верхней части окна размещается схема данных запроса, которая содержит список таблиц – источников и отражает связь между ними.
В нижней части окна находится Бланк построения запроса QBE (Query by Example), в котором каждая строка выполняет определенную функцию:
-
Поле – указывает имена полей, которые участвуют в запросе -
Имя таблицы – имя таблицы, с которой выбрано это поле -
Сортировка – указывает тип сортировки -
Вывод на экран – устанавливает флажок просмотра поля на экране -
Условия отбора - задаются критерии поиска -
Или – задаются дополнительные критерии отбора
В окне «Запрос: запрос на выборку» с помощью инструментов формируем запрос:
-
Выбрать таблицу – источник, из которой производится выборка записей. -
Переместить имена полей с источника в Бланк запроса. Например, из таблицы Группы студентов отбуксировать поле Название в первое поле Бланка запросов, из таблицы Студенты отбуксировать поле Фамилии во второе поле Бланка запросов, а из таблицы Успеваемость отбуксировать поле Оценка в третье поле и из таблицы Дисциплины отбуксировать поле Название в четвертое поле Бланка запросов. -
Задать принцип сортировки. Курсор мыши переместить в строку Сортировка для любого поля, появится кнопка открытия списка режимов сортировки: по возрастанию и по убыванию. Например, установить в поле Фамилия режим сортировки – по возрастанию. -
В строке вывод на экран автоматически устанавливается флажок просмотра найденной информации в поле. -
В строке "Условия" отбора и строке "Или" необходимо ввести условия ограниченного поиска – критерии поиска. Например, в поле Оценка ввести - "отл/A", т.е. отображать все фамилии студентов, которые получили оценки отл/A. -
После завершения формирования запроса закрыть окно Запрос на выборку. Откроется окно диалога Сохранить – ответить Да (ввести имя созданного запроса, например, Образец запроса в режиме Конструктор) и щелкнуть ОК и вернуться в окно базы данных.
Чтобы открыть запрос из окна базы данных, необходимо выделить имя запроса и щелкнуть кнопку Открыть, на экране появится окно запрос на выборку с требуемым именем.
Чтобы внести изменения в query его необходимо выбрать щелчком мыши в окне базы данных, выполнить щелчок по кнопке Конструктор, внести изменения. Сохранить запрос, повторить его выполнение.
5 Заполнение бланка запроса по образцу
Бланк запроса по образцу — удивительно изящное и удобное средство создания запросов.
-
Бланк запроса по образцу имеет две панели. На верхней панели расположены списки полей тех таблиц, на которых основывается запрос. -
Строки нижней панели определяют структуру запроса, то есть структуру результирующей таблицы, в которой будут содержаться данные, полученные по результатам запроса. -
Строку Поле заполняют перетаскиванием названий полей из таблиц в верхней части бланка. Каждому полю будущей результирующей таблицы соответствует один столбец бланка запроса по образцу. -
Строка Имя таблицы заполняется автоматически при перетаскивании поля. -
Если щелкнуть на строке Сортировка, появится кнопка раскрывающегося списка, содержащего виды сортировки. Если назначить сортировку по какому-то полю, данные в результирующей таблице будут отсортированы по этому полю.
-
Бывают случаи, когда поле должно присутствовать в бланке запроса по образцу, но не должно отображаться в результирующей таблице. В этом случае можно запретить его вывод на экран, сбросив соответствующий флажок. -
Самая интересная строка в бланке запроса по образцу называется Условие отбора. Именно здесь и записывают тот критерий, по которому выбирают записи для включения в результирующую таблицу. По каждому полю можно создать свое условие отбора. В нашем примере назначены два условия отбора: повесу игрока (более 80 кг) и по росту (менее 190 см). -
Запуск запроса выполняют щелчком на кнопке Вид. При запуске образуется результирующая таблица. -
Чтобы выйти из результирующей таблицы и вернуться к созданию запроса в бланке запроса по образцу, нужно еще раз щелкнуть на кнопке Вид.
Зачем нужен флажок Вывод на экран?
Возникает один закономерный вопрос. Зачем нужен флажок Вывод на экран? Если