Создание базы данных в режиме конструктора
Практическая работа, 27 Мая 2014, автор: пользователь скрыл имя
Краткое описание
Задание. Создать новую базу данных «Деканат», в которой будут храниться сведения о студентах вашего потока.
Прикрепленные файлы: 1 файл
Dokument_Microsoft_Office_Word (2).docx
— 509.24 Кб (Скачать документ)Примеры использования символов задания шаблонов
Использование символов |
Образец |
Поиск в MSAccess |
Вопросительный знак ( ? ); в качестве шаблона для любого символа |
За?ор |
Забор |
Звездочка ( * ); в качестве шаблона для любой группы символов |
Д*нь |
День |
Звездочка ( * ); в качестве шаблона для любой группы начальных символов |
*й |
128й |
Знак фунта (#); в качестве шаблона для любой цифры |
#-й |
5-й |
Восклицательный знак ( ! ) после первой скобки; для поиска символа, который не входит в данный набор символов |
Иванов[!аы] |
Иванову |
2. Теперь приведем несколько примеров использования условных выражений:
Примеры условных выражений
Условные выражения |
Вывод записей, которые |
Саратов |
имеют значение Саратов |
Not Саратов |
не имеют значение Саратов |
In (Саратов, Томск, Уфа) |
имеют значение Саратов, Томск или Уфа |
<М |
начинаются с букв А-Л |
>=М |
начинаются с букв М-Я |
100 |
имеют числовое значение 100 |
<=20 |
имеют числовое значение 20 |
Date() |
имеют значение текущей даты |
>=01.01.94 |
имеют значение даты позднее 01.01.94 |
Beetween 01.01.93 AND31.12.93 |
имеют значение года 1993 |
*.02.* |
имеют значение месяца Февраль |
Null |
содержат в поле пустое значение |
Is Not Null |
имеют не пустое значение в поле |
Like "Р*" |
начинаются с буквы Р |
3. На основе приведенных выше примеров сформируем условия отбора студентов согласно условиям, поставленным в Задании. Так, согласно 1), нам необходимо отобрать студентов с отчествами, начинающимися на букву «И». Используем для этой цели знак «*» как шаблон для любой группы символов. Запись «И*» в строке Условие отбора в поле «Отчество» позволит нам отобрать студентов с необходимым отчеством.
4. Для отбора студентов, родившихся в мае, можно использовать различные символы. Так, например, если использовать символ «*», то в строке Условие отбора поля «Дата рождения» нужно ввести «*.05.*». Если использовать символ «?», то условие отбора буде иметь вид: «??.05.19??». Аналогичным образом можно использовать знак «#» - условие отбора примет вид «##.05.19##».
5. Для отбора студентов с заданными именами необходимо использовать логическую операциюOR (ИЛИ). В строке Условие отбора в поле «Имя» нужно ввести следующую запись «Александр OR Алексей».
6.1. Создание многотабличной базы данных
Многотабличная база данных – это БД с двумя или более таблицами, между которыми установлены связи, объединяющие их в единое целое. Для создания такой базы данных необходимо провести проектирование БД. Проектирование структуры базы данных - это решение о том, как должны быть организованы поля в базе данных. Необходимо решить, каким образом поля распределяются по таблицам и в каком порядке. Если информация в некоторых полях повторяется в ряде записей, следует подумать о помещении этих полей в отдельную таблицу и установке связей. Это позволяет существенно уменьшить объем базы и повысить точность данных. Например, если у вас имеется много книг одного издательства, вероятно, вместо повторяющегося ввода информации о нем в каждую запись имеет смысл создать таблицу, которая, скажем, будет называться «Издатели», и включить в нее всю эту информацию, назначив каждому издательству идентифицирующий код. После этого в таблице «Книги» достаточно ввести данный код, чтобы установить связь между книгой и ее издателем. Процесс организации полей и распределения их в одной или нескольких таблицах, а также создания связей, называется нормализацией (подробнее мы остановимся на нем в разделе 6.2).
Приведем еще один пример. Допустим, в базе нужно хранить данные о студентах (фамилия, изучаемая дисциплина) и преподавателях (фамилия, номер кафедры, ученая степень, преподаваемая дисциплина). Если хранить данные в одной таблице, то в строке с фамилией студента, изучающего конкретную дисциплину, будут храниться все атрибуты преподавателя, читающего эту дисциплину. Получается огромная избыточность данных. А если хранить данные о студенте в одной таблице, о преподавателе - в другой и установить связь между полями «Читаемая дисциплина» - «Изучаемая дисциплина» (фактически это одинаковые поля), то избыточность хранимых данных многократно уменьшится без ущерба для логической организации информации.
Типы связей. В Access можно задать три вида
связей между таблицами; Один-ко-многим, Многие-ко-многим и Один-к-одному.
Связь Один-ко-многим - наиболее часто используемый тип связи между таблицами. При такой связи каждой записи в таблице А может соответствовать несколько записей в таблице В (поля с этими записями называют внешними ключами), а запись в таблице В не может иметь более одной соответствующей ей записи в таблице А.
При связи Многие-ко-многим одной записи в таблице А может соответствовать несколько записей в таблице В, а одной записи в таблице В - несколько записей в таблице А. Такая схема реализуется только с помощью третьей (связующей) таблицы, ключ которой состоит, по крайней мере, из двух полей, одно из которых является общим с таблицей А, а другое - общим с таблицей В.
При связи Один-к-одному запись в
таблице А может иметь не более одной связанной
записи в таблице В, и наоборот. Этот тип
связи используют не очень часто, поскольку
такие данные могут быть помещены в одну
таблицу. Связь с отношением Один-к-одному применяют
для разделения очень широких таблиц,
для отделения части таблицы в целях ее
защиты, а также для сохранения сведений,
относящихся к подмножеству записей в
главной таблице.
Тип создаваемой связи зависит от полей, для которых определяется связь:
· связь Один-ко-многим создается
в том случае, когда только одно из полей
является ключевым или имеет уникальный
индекс, т.е. значения в нем не повторяются;
· связь Один-к-одному создается
в том случае, когда оба связываемых поля
являются ключевыми или имеют уникальные
индексы;
· связь Многие-ко-многим фактически
представляет две связи типа один-ко-многим через третью
таблицу, ключ которой состоит, по крайней
мере, из двух полей, общих для двух других
таблиц.
Целостность данных. Целостность данных означает систему правил, используемых в СУБД Access для поддержания связей между записями в связанных таблицах, а также обеспечивает защиту от случайного удаления или изменения связанных данных. Контролировать целостность данных можно, если выполнены следующие условия:
· связанное поле (поле, посредством которого осуществляется связь) одной таблицы является ключевым полем или имеет уникальный индекс;
· связанные поля имеют один тип данных. Здесь существует исключение. Поле счетчика может быть связано с числовым полем, если оно имеет тип Длинное целое,
· обе таблицы принадлежат одной базе данных Access. Если таблицы являются связанными, то они должны быть таблицами Access. Для установки целостности данных база данных, в которой находятся таблицы, должна быть открыта. Для связанных таблиц из баз данных других форматов установить целостность данных невозможно.
Задание 1. Создать многотабличную БД «Деканат» на основе однотабличной БД, добавив в нее таблицы «Сессия» и «Стипендия» и установить связи между таблицами.
1. Запустить ACCESS. (Пуск, Программы, MS Access) и открыть созданную ранее БД «Деканат». Пока там находится одна таблица – «Студенты».
2. Перед созданием таблиц в режиме конструктора рекомендуется повторить раздел 2.1 «Создание базы данных в режиме конструктора».
3. Создать таблицу «Сессия» в режиме конструктора. В этой таблице мы будем хранить результаты сессии – оценки – для каждого студента, а также результат сессии, который будет вычисляться по оценкам, и от которого будет зависеть размер стипендии. Для создания таблицы «Сессия» используем следующие поля:
Сессия
Признак ключа |
Поле |
Тип поля |
Размер поля |
Ключ |
Номер |
Числовое |
Целое |
Оценка 1 |
Числовое |
Целое | |
Оценка 2 |
Числовое |
Целое | |
Оценка 3 |
Числовое |
Целое | |
Оценка 4 |
Числовое |
Целое | |
Результат |
Текстовый |
5 |
4. Сохранить эту таблицу под именем «Сессия».
5. Заполнить таблицу «Сессия» данными: ввести 5 записей, номер студента необходимо взять из таблицы «Студенты», оценки вводить произвольные – от 2 до 5. Что касается поля «Результат», то его значение необходимо вычислять по следующей таблице:
Неуд. |
Хор. |
Хор1. |
Отл. |
За удов. и неудов. |
За две 4 и более |
5 5 5 4 |
5 5 5 5 |
Например, если студент имеет хотя бы одну оценку 2 или 3 по итогам сессии, то его результат – «Неуд». Если у него две четверки и две пятерки, три четверки и одна пятерка, четыре четверки – то его результат – «Хор». Два оставшихся варианта приведены в таблице.
6. Закрыть заполненную таблицу.
7. Создать таблицу «Стипендия» в режиме конструктора. В этой таблице мы будем хранить зависимость размера стипендии от результата сессии. Размер стипендии будет выражен в процентах от минимальной стипендии. Поля таблицы будут такие:
Стипендия
Признак ключа |
Поле |
Тип поля |
Размер поля |
Ключ |
Результат |
Текстовый |
5 |
Стипендия |
Числовое |
Целое, формат - Процентный |
8. Сохранить таблицу под именем «Стипендия».
9. Заполнить таблицу «Стипендия» в соответствии со следующей таблицей:
Результат |
Стипендия |
Неуд. |
0,00% |
Хор. |
100,00% |
Хор1. |
200,00% |
Отл. |
300,00% |