ЛАБОРАТОРНЫЕ РАБОТЫ MS ACCESS. Лабораторная работа 1 создание таблиц и схемы базы данных
Скачать 1.89 Mb.
|
Лабораторная работа 1 |
Тип данных | Описание | Размер |
Текстовый | Символьные или числовые данные, не требующие вычислений. Максимальное количество символов – 255. | До 255 символов |
Поле МЕМО | Длинный текст – до 65 536 символов. | До 65 535 символов |
Числовой | Числовые данные, используемые в расчетах. | 1,2,4,8 и 16 байтов |
Дата/Время | Хранение дат и времени. | 8 байтов |
Денежный | Хранения денежных сумм с точностью до четырех знаков после запятой. Целая часть может содержать до 15 десятичных знаков. | 8 байтов |
Счетчик | Поле заполняется автоматически уникальными значениями последовательными или случайными, в зависимости от значения свойства Новые значения. В таблице может быть только одно поле с типом данных Счетчик. Номер, присвоенный записи, не может быть изменен или повторно использован после удаления записи. | 4 байта |
Логический | Предназначен для хранения одного из двух значений, интерпретируемых как "Да/Нет", "Истина/Ложь", "Вкл./Выкл." | 1 бит |
Поле объекта OLE | Объект, созданный в других программах, которые используют протокол OLE. Объекты OLE связываются с базой данных или внедряются в нее. | До 1 Гигабайта |
Вложение | Хранение любых присоединенных объектов. В поле отображается количество присоединенных объектов и значок скрепки, при нажатии на котором появляется окно Вложения. В окне можно добавить и удалить вложенный объект, открыть его для редактирования, а также сохранить объект в файловой системе. При добавлении файла как вложения в базе данных создается копия этого файла. Изменения, внесенные при редактировании вложенного объекта, никак не отражаются на содержимом исходного файла в файловой системе, а изменения в файле не переносятся автоматически на объект, хранимый в БД. | |
Гиперссылка | Хранение ссылки на веб-страницу; на файл на FTP-сервере, в локальной сети или на компьютере; на адрес электронной почты и т. п. | До 2048 символов |
Подстановка | Список значений, возвращаемых запросом или из таблицы, либо набор значений, указанных при создании поля. | |
Для каждого поля (столбца) определяются свойства (перечень свойств зависит от выбранного типа данных):
Размер поля задает максимальный размер данных, для хранения которых предназначено данное поле. Для текстовых данных размер поля определяется количеством символов, которые будут вводиться в поле. Предельное значение – 255 символов. Для числовых данных размер поля может быть следующим:
байт – целые числа от 0 до 255, занимает при хранении 1 байт;
целое – целые числа от -32 768 до 32 767, занимает 2 байта;
длинное целое – целые числа от -2 147 483 648 до 2 147 483 647, занимает 4 байта и др.
Формат полязадает способ отображения содержимого поля.
Подписьзадает заголовок столбца, отличный от имени соответствующего поля. Это полезно в ситуациях, когда удобнее иметь заголовок столбца более длинный или более понятный, чем используемое имя поля.
Маска вводазадает формат, позволяющий автоматизировать проверку вводимых символов и облегчить процесс ввода данных. Маска ввода состоит из постоянных символов (таких как скобки, точки или дефисы) и специальных символов, указывающих, в какие позиции, в каком количестве и какого типа данные могут быть введены. Символы, используемые для задания маски ввода приведены в таблице 1.2.
Значение по умолчанию задает значение, присваиваемое автоматически в качестве значения поля.
Условие на значениеопределяет условие (ограничение), накладываемое на вводимые в поле данные.
Сообщение об ошибке определяет то сообщение, которое будет выводиться, если при вводе данных не соблюдается условие, указанное в свойстве Условие на значение.
Обязательное поле – свойство, указывающее требует ли поле обязательного ввода значения. Если это свойство имеет значение "Да", то при вводе новой записи необходимо ввести значение в это поле. Пустые (Null) значения в этом поле не допускаются.
Индексированное полеопределяет, является ли данное поле индексированным и если является, то в каком режиме. Если поле индексированное, то средствами СУБД в системе будет создан упорядоченный список содержимого данного поля, что обеспечивает более быстрый доступ к данным. Свойство Индексированное поле может иметь следующие значения: Нет (значение по умолчанию) – индекс не создается; Да (Допускаются совпадения) – в индексе допускаются повторяющиеся значения; Да (Совпадения не допускаются) – повторяющиеся значения в индексе не допускаются.
Таблица 1.2
Символы, часто используемые для задания маски ввода
Символ маски | Назначение |
0 | Цифра от 0 до 9 ( ввод обязателен; символы плюс [+] и минус [-] не допускаются) |
9 | Цифра или пробел (ввод не обязателен; символы плюс и минус не допускаются) |
# | Цифра или пробел, знаки плюс или минус (ввод не обязателен) |
L | Буква (от A до Z или от А до Я, ввод обязателен) |
? | Буква (от A до Z или от А до Я, ввод не обязателен) |
A | Буква или цифра (ввод обязателен) |
a | Буква или цифра (ввод необязателен) |
& | Любой символ или пробел (ввод обязателен) |
C | Любой символ или пробел (ввод необязателен) |
< | Указывает перевод всех следующих символов на нижний регистр |
> | Указывает перевод всех следующих символов на верхний регистр |
В каждой таблице должен быть первичный ключ (PK) – один или несколько столбцов, значения которых уникально идентифицируют строки. Например, в таблице Читатель, содержащей сведения о читателях библиотеки (номер билета, Ф.И.О., домашний адрес, место учебы и т.д.), первичным ключом служит столбец Номер читательского билета, поскольку, содержит неповторяющиеся значения. Зная номер билета читателя, можно в любой момент времени найти строку, содержащую информацию о его личных данных.
Внешний ключ (FK) – один или несколько столбцов, значения которых составляют одновременно значение первичного ключа другой таблицы. Внешний ключ позволяет создать связь между двумя таблицами. Например, в таблице Журнал, содержащей сведения о выдаче и возврате книг, одним из внешних ключей служит столбец Номер читательского билета.
База данных, как правило, состоит из нескольких таблиц. СУБД Access поддерживает два типа связей между таблицами: «один-к-одному» и «один-ко-многим».
Отношение «один-к-одному» означает, что каждой записи одной таблицы может соответствовать ноль записей или только одна запись другой таблицы.
Отношение «один-ко-многим» означает, что каждой записи одной таблицы может соответствовать ноль, одна или несколько записей другой таблицы, но в тоже время любая запись второй таблицы связана только с одной записью первой таблицы.
Линия связи создается между первичным ключом родительской таблицы и внешним ключом дочерней таблицы. Тип данных и размер этих ключей должны совпадать. Связь типа «один-к-одному» определяется в том случае, если внешний ключ обладает свойством «Индексированное поле. Совпадения не допускаются».
Задание
Создать в среде Miсrosoft Access в режиме Конструктора таблицы предметной области «Библиотека»: раздел, тема, книга, читатель, журнал.
Создать схему базы данных.
Последовательность выполнения работы
Задание 1. Создание таблиц базы данных. Подготовительный этап
Запустите Microsoft Access.
В диалоговом окне, в группе Создание базы данных, поставьте переключатель в положение Новая база данных и нажмите кнопку ОК.
В правой части окна в области «Новая база данных»( рис.1.1), выбрать пиктограмму «папка»
Рис.1.1 Фрагмент окна «Приступая к работе MS Access»
В появившемся окне Файл новой базы данных укажите папку X:/ и имя файла Библиотека, и нажмите кнопку Создать.
Создание таблицы «Раздел»
На ленте Созданиедвойным щелчкомвыберите Конструктор таблиц.
В окне Конструктора таблицы в столбце Имя поля введите названия столбцов для таблицы Раздел: код раздела и ниже название раздела. Рис(1.2)
В столбце Тип данных из раскрывающегося списка для поля код раздела выберите числовой, а для поля название раздела – текстовый. Рис(1.2)
Рис.1.2 Ввод названий полей в таблицу раздел
У кажите в таблице первичный ключ. Для этого переведите курсор в поле код раздела и на панели инструментов ленты Конструкторвыберите пиктограмму Ключа( рис.1.3)
Рис1.3 Панель инструментов ленты «Конструктор»
В нижней части окна Конструктора, в области «Свойства поля» в строке «Индексированное поле», появится значение «Да (Совпадения не допускаются)».
Сохраните созданную структуру таблицы, для этого на панели инструментов выберите кнопку с пиктограммой дискеты. В диалоговом окне Сохранение введите имя таблицы: Раздел.
Закройте созданную таблицу.
Создание таблицы «Тема»
Снова на ленте Созданиедвойным щелчкомвыберите Конструктор таблиц, чтобы создать структуру таблицы Тема. С помощью Конструктора создайте таблицу Тема, содержащую следующие поля (табл.1.3):
Таблица 1.3
Структура таблицы Тема
Имя поля | Тип данных |
код темы | Числовой |
код раздела | Числовой |
название темы | Текстовый |
Введите названия столбцов для таблицы Тема:, ,. Выберите типы данных: для поля код темы – числовой, для поля код раздела – числовой, для поля название темы – текстовый.
Укажите в таблице первичный ключ. Для этого переведите курсор в поле код темы и на панели инструментов выберите пиктограмму Ключа.
Сохраните созданную таблицу под название Тема и закройте ее.
Создание таблицы «Книга»
С помощью Конструктора создайте таблицу Книга, содержащую следующие поля (табл.1.4).
Таблица 1.4
Структура таблицы Книга
Имя поля | Тип данных |
Номер книги | Числовой |
Код темы | Числовой |
Автор | Текстовый |
Название | Текстовый |
Издательство | Текстовый |
Год издания | Числовой |
Количество экземпляров | Числовой |
Цена | Денежный |
Укажите в таблице первичный ключ – Номер книги.
Сохраните и закройте таблицу Книга.
Создание таблицы «Читатель»
С помощью Конструктора создайте таблицу Читатель, содержащую следующие поля( табл.1.5).
Таблица 1.5
Структура таблицы Читатель
Имя поля | Тип данных |
Номер билета | Числовой |
Фамилия | Текстовый |
Имя | Текстовый |
Отчество | Текстовый |
Дата рождения | Дата/Время |
Адрес | Текстовый |
Домашний телефон | Текстовый |
Место учебы | Текстовый |
Укажите в таблице первичный ключ – Номер билета.
Переведите курсор в поле Имя и в нижней части окна Конструктора, в области «Свойства поля», в строке «Размер» укажите 20.
Переведите курсор в поле Адрес и в области «Свойства поля», в строке «Подпись» введите Домашний адрес.
Переведите курсор в поле Домашний телефон и в области «Свойства поля», в строке «Маска ввода» введите ##-##-##.
Переведите курсор в поле Фамилия и в области «Свойства поля», в строке «Маска ввода» введите >??????????????.
Переведите курсор в поле Место учебы и в области «Свойства поля», в строке «Значение по умолчанию» введите МГТУ.
Сохраните и закройте таблицу Читатель.
Создание таблицы «Журнал»
С помощью Конструктора создайте таблицу Журнал, содержащую следующие поля( табл.1.6).
Таблица 1.6
Структура таблицы Журнал
Имя поля | Тип данных |
Номер строки | Числовой |
Номер билета | Числовой |
Номер книги | Числовой |
Дата выдачи | Дата/Время |
Дата возврата план | Дата/Время |
Дата возврата факт | Дата/Время |
Залог (да/нет) | Логический |
Укажите в таблице первичный ключ – Номер строки.
Переведите курсор в поле Залог и в области «Свойства поля», в строке «Формат» из раскрывающегося списка выберите Включено/Выключено.
Переведите курсор в поле Дата выдачи и в области «Свойства поля», в строке «Условие на значение» введите >=#01.01.00#, а в строке «Сообщение об ошибке» введите Дата введена неверно! Библиотека открылась 1января 2000
Сохраните и закройте таблицу Журнал.
Самостоятельное задание
Создать таблицу Паспорт для хранения паспортных данных читателей и включить ее в схему данных. Определяя тип связи, помните, что у читателя может быть только один паспорт.
Задание 2. Создание схемы базы данных
Выберите команду Работа с базами данных/Схема данных.
В диалоговом окне Добавление таблицы выберите из списка первую таблицу и нажмите кнопку Добавить, затем выберите следующую таблицу и снова нажмите кнопку Добавить. Таким образом последовательно выберите все таблицы и закройте диалоговое окно.
В окне Схема данных установите курсор на заголовке таблицы Тема и переместите ее под таблицу Раздел, аналогичным образом переместите таблицу Книга под таблицу Тема, а таблицу Журнал под таблицу Книга.
Установите курсор на поле Код раздела в таблице Раздел, удерживая нажатой клавишу мыши, переместите и наложите его сверху на поле Код раздела в таблице Тема. Отпустите клавишу мыши.
На экране появится диалоговое окно Изменение связей. Включите опцию Обеспечение целостности данных, при этом для Вас станут доступными две дополнительные опции:
каскадное обновление связанных полей – это автоматическое обновление значений внешнего ключа в дочерней таблице (поля Код раздела в таблице Тема), при изменении значения первичного ключа в родительской таблице (поля Код раздела в таблице Раздел).
каскадное удаление связанных записей – это автоматическое удаление дочерних строк (строк в таблице Тема) при удалении родительской строки (строки в таблице Раздел).
Включите эти дополнительные опции, щелкните по кнопке ОК. В окне Схема данных связь будет показана графически.
Установите курсор на поле Код темы в таблице Тема, удерживая нажатой клавишу мыши, переместите и наложите его сверху на поле Код темы в таблице Книга, чтобы создать связь междутаблицами Тема и Книга. В диалоговом окне включите опции обеспечения целостности данных и нажмите кнопку Создать.
Установите курсор на поле Номер книги в таблице Книга, удерживая нажатой клавишу мыши, переместите и наложите его сверху на поле Номер книги в таблице Журнал, чтобы создать связь междутаблицами Книга и Журнал. В диалоговом окне включите опции обеспечения целостности данных и нажмите кнопку ОК.
Установите курсор на поле Номер билета в таблице Читатель, удерживая нажатой клавишу мыши, переместите и наложите его сверху на поле Номер билета в таблице Журнал, чтобы создать связь междутаблицами Читатель и Журнал. В диалоговом окне включите опции обеспечения целостности данных и нажмите кнопку ОК.
Разместите таблицы так, чтобы были видны все линии связей между ними.
Сохраните созданную схему базы данных и закройте окно Схема данных.
Контрольные вопросы
Перечислите типы данных, поддерживаемые СУБД Access.
Объясните назначение свойств: Размер, Условие на значение, Сообщение об ошибке.
Каким требованиям должны удовлетворять поля, чтобы между ними можно было создать связь?
Дайте определение понятиям: «первичный ключ», «внешний ключ».
Назовите первичные и внешние ключи каждой из созданных таблиц.
Какие типы связей между таблицами поддерживает СУБД Access?
Каким требованиям должны отвечать ключевые поля таблиц, чтобы