для поля код сотрудника следует установить тип
Задания и алгоритм реализации кейс-ситуации
1) Создайте базу данных «Фирма» (кейс-компонент 3).
2) Разработайте информационно-логическую модель реляционной базы данных для условной предметной области «Фирма». Перед разработкой информационно-логической модели реляционной базы данных рассмотрим, из каких информационных объектов должна состоять эта БД. Если все сведения поместить в одном объекте, то будет неудобно для работы. Начнутся повторы данных. Всякий раз, когда сотрудник Иванов будет работать с какой-либо фирмой, придется прописывать данные о сотруднике и клиенте заново, в результате чего можно допустить множество ошибок. Чтобы уменьшить число ошибок, можно исходный объект разбить на несколько объектов и установить связи между ними. Можно выделить три объекта, которые не будут обладать избыточностью.
Таким образом, по описанию предметной области выделяем 3 объекта: Сотрудники, Клиенты и Заказы. Представим состав реквизитов этих объектов в виде «название объекта (перечень реквизитов)»:
Сотрудники (код сотрудника, фамилия, имя, отчество, должность, дата рождения, телефон, адрес, эл_почта, комиссия).
Клиенты (код клиента, название компании, адрес, телефон, факс, эл_ почта, заметки)
Заказы (код заказа, код клиента, код сотрудника, дата размещения, дата исполнения, сумма, отметка о выполнении).
Рассмотрим связь между объектами. Объект Сотрудники связан с объектом Заказы связью один-ко-многим, поскольку один сотрудник может обслуживать несколько заказов.Объект Клиенты связан с объектом Заказы связью один-ко-многим, поскольку один клиент может оформить в данной фирме несколько заказов. В реляционной базе данных в качестве объектов рассматриваются отношения, которые можно представить в виде таблиц. Таблицы между собой связываются посредством общих полей, т.е. одинаковых по форматам и, как правило, по названию, имеющихся в обеих таблицах. Рассмотрим, какие общие поля надо ввести в таблицы для обеспечения связности данных. Для связи таблиц Сотрудники и Заказы используем поле код сотрудника, которое в одной таблице будет первичным ключом, а в другой – внешним (или вторичным). А для связи таблиц Клиенты и Заказы используем поле код клиента, которое в одной таблице будет первичным ключом, а в другой – внешним (или вторичным).
3) Создайте в режиме Конструктора (кейс-компонент 4) 3 таблицы (таблицы 13-15). Задайте свойства полей.
4) Отдельные таблицы, содержащие информацию по определенной теме, необходимо связать в единую структуру БД. Для связывания таблиц следует задать ключевые поля (определение ключевого поля см. п. 1.3).
5) Таблица Заказы содержит поля код сотрудника и код клиента. При их заполнении могут возникнуть некоторые трудности, так как не всегда удается запомнить все предприятия, с которыми работает фирма, и всех сотрудников с номером кода. Для удобства можно создать раскрывающиеся списки с помощью Мастера подстановок.
Таблица 13 – Структура таблицы Сотрудники
Имя поля | Тип данных |
код сотрудника | Числовой |
фамилия | Текстовый |
имя | Текстовый |
отчество | Текстовый |
должность | Текстовый |
телефон | Текстовый |
адрес | Текстовый |
дата рождения | Дата/Время |
эл_почта | Гиперссылка |
комиссия | Числовой |
Таблица 14 – Структура таблицы Клиенты
Имя поля | Тип данных |
код клиента | Числовой |
название компании | Текстовый |
адрес | Текстовый |
телефон | Текстовый |
факс | Числовой |
эл_почта | Гиперссылка |
заметки | Поле МЕМО |
Таблица 15 – Структура таблицы Заказы
Имя поля Тип данных | Тип данных |
код заказа Счетчик | Числовой |
код клиента Числовой | Числовой |
код сотрудника Числовой | Числовой |
дата размещения Дата/Время | Дата/Время |
дата исполнения Дата/Время | Дата/Время |
сумма Денежный | Денежный |
отметка о выполнении Логический | Логический |
a) Откройте таблицу Заказы в режиме Конструктора.
b) Для поля код сотрудника выберите тип данных Мастер подстановок.
c) В списке таблиц выберите таблицу Сотрудники, Click на кнопке Далее.
d) В списке Доступные поля выберите поле код сотрудника и Click на кнопке со стрелкой, чтобы ввести поле в список Выбранные поля. Таким же образом добавьте поля фамилия и имя и щелкните на кнопке Далее.
e) Выберите порядок сортировки списка по полю Фамилия.
f) Сбросьте флажок Скрыть ключевой столбец и нажмите кнопку Далее.
g) На последнем шаге Мастера подстановок замените при необходимости надпись для поля подстановок и Click на кнопке Готово.
6) Аналогичным образом создайте раскрывающийся список для поля код клиента.
7) После создания ключевых полей необходимо создать связи. Создайте схему данных (кейс-компонент 5), не забыв закрыть при этом все открытые таблицы. В результате должна получиться схема данных, представленная на рисунке 28.
Рисунок 28 – Схема данных БД «Фирма»
8) В таблицу Сотрудники внесите данные о семи работниках. В поле адрес введите только город, в котором живет сотрудник (таблица 16).
9) В таблицу Клиенты внесите данные о семи предприятиях, с которыми работает данная фирма. В поле адрес введите только город, в котором находится фирма (таблица 17).
10) В таблице Заказы оформите десять заявок, поступивших на фирму (таблица 18).
Введение в использование типов данных и свойств полей
Каждая таблица в Access состоит из полей. В свойствах поля описываются характеристики и поведение добавляемых в него данных. Тип данных поля — это самое важное свойство, которое определяет, какие данные могут храниться в поле. В этой статье описаны типы данных и другие свойства поля, доступные в Access, а также приведена дополнительная информация в разделе справочных сведений о типах данных.
В этой статье
Общие сведения
Иногда типы данных могут показаться неочевидными, например в поле с типом данных «Текст» могут храниться данные, состоящие из текста и чисел. Но в поле с типом данных «Число» могут храниться только числовые данные. Поэтому вам нужно знать, какие свойства используются для каждого типа данных.
Тип данных поля определяет много других важных характеристик поля, в частности:
форматы, которые можно использовать в поле;
максимальный размер значения в поле;
способ использования поля в выражениях;
возможность индексирования поля.
В зависимости от способа создания нового поля тип данных поля может быть задан заранее или его можно выбрать. Например, если при создании поля в режиме таблицы вы:
используете существующее поле из другой таблицы, типы данных уже определены в ней или в шаблоне;
вводите данные в пустом столбце (или поле), Access назначает полю тип данных, исходя из вводимых значений, или вы можете назначить тип данных и формат для поля;
на вкладке Изменение полей в группе Поля и столбцы выбираете команду Добавить поля, Access отображает список типов данных для выбора.
Когда какой тип данных использовать?
Тип данных поля можно обдумать как набор характеристик, которые применяются ко всем его значениям. Например, значения, которые хранятся в текстовом поле, могут содержать только буквы, цифры и ограниченный набор знаков препинания, а текстовое поле может содержать не более 255 знаков.
Совет: Иногда все выглядит так, как будто данные в поле имеют один тип, а на самом деле это данные другого типа. Например, поле вроде бы содержит числовые значения, но на самом деле это текстовые значения, представляющие номера комнат. Часто для сравнения или преобразования значений с разными типами данных используются выражения.
В таблицах ниже показаны форматы, доступные для каждого типа данных, и описаны результаты форматирования.
Основные типы
Короткие буквенно-цифровые значения, например фамилия или почтовый адрес. Помните, что начиная с версии Access 2013, текстовый тип данных переименован в Краткий текст.
Числовой, Большое число
Числовые значения, например расстояния. Помните, что для денежных значений есть отдельный тип данных.
Значения «Да» и «Нет», а также поля, содержащие только одно из двух значений.
Date/Time, Date/Time Extended
Дата/время: значения даты и времени для лет от 100 до 9999.
Дата/время с расширением: значения даты и времени для лет с 1 по 9999.
Текст или сочетание текста и чисел, которые отформатированы с помощью элементов управления цветом и шрифтом.
Результаты вычисления. Вычисление может ссылаться на другие поля в той же таблице. Вычисления создаются с помощью построителя выражений. Вычисляемые поля впервые появились в Access 2010.
Вложенные изображения, файлы электронных таблиц, документы, диаграммы и другие файлы поддерживаемых типов в записях базы данных (как и в сообщениях электронной почты).
Текст или сочетание текста и чисел, сохраненное как текст и используемое в качестве адреса гиперссылки.
Длинные блоки текста. Типичный пример использования поля MEMO — подробное описание продукта. Помните, что начиная с версии Access 2013, тип данных MEMO переименован в «Длинный текст».
Список значений, которые получены из таблицы или запроса, или набор значений, которые вы указали при создании поля. Запускается мастер подстановок, с помощью которого можно создать поле подстановки. В зависимости от выбора, сделанного в мастере, данные в поле подстановки могут иметь текстовый или числовой тип.
У полей подстановки есть дополнительный набор свойств, которые находятся на вкладке Подстановка в области Свойства поля.
Примечание: В файлах формата MDB недоступны вложения и вычисляемые данные.
Числовой
Числа без дополнительного форматирования (точно в том виде, в котором хранятся).
Обычные денежные значения.
Обычные денежные значения в формате ЕС.
Числовые данные с десятичными знаками.
Значения в процентах.
Дата и время
Краткий формат даты
Дата в кратком формате. Зависит от региональных параметров даты и времени. Например, 14.03.2001 для России.
Средний формат даты
Дата в среднем формате. Например, 03-апр-09 для России.
Длинный формат даты
Дата в длинном формате. Зависит от региональных параметров даты и времени. Например, 14 марта 2001 г. для России.
Время только в 12-часовом формате, который будет соответствовать изменениям в региональных параметрах даты и времени.
Средний формат времени
Время в 12-часовом формате, после которого указываются символы AM (до полудня) или PM (после полудня).
Время только в 24-часовом формате, который будет соответствовать изменениям в региональных параметрах даты и времени.
Логический
Объект OLE Объекты OLE, например документы Word.
Свойство «Размер поля»
После создания поля и указания типа данных для него можно настроить дополнительные свойства поля. Набор доступных дополнительных свойств зависит от типа данных поля. Например, вы можете настроить размер текстового поля с помощью свойства Размер поля.
Для числовых и денежных полей свойство Размер поля особенно важно, поскольку определяет диапазон значений поля. Например, одноразрядное числовое поле может содержать только целые числа в диапазоне от 0 до 255.
Свойство Размер поля определяет также, сколько места на диске занимает каждое значение числового поля. В зависимости от размера поля число может занимать 1, 2, 4, 8, 12 или 16 байт.
Примечание: В полях MEMO и текстовых полях возможны значения переменных размеров. Для этих типов данных свойство Размер поля задает максимальный размер доступного пространства для одного значения.
Дополнительные сведения о свойствах полей и той роли, которую они выполняют для различных типов данных, см. в разделе Справочные сведения о типах данных. Ознакомьтесь также со статьей Задание размера поля.
Типы данных в связях и соединениях
Связь между таблицами — это связи между общими полями в двух таблицах. Связь может быть одного из следующих типов: один к одному, один ко многим, многие ко многим.
Объединение — это SQL, которая объединяет данные из двух источников в одну запись в запросе набор записей на основе значений в указанном поле, которые есть у них общие. Присоединиться может быть внутреннее соединение, левое внешнее соединение или правое внешнее соединение.
Когда вы создаете связь между таблицами или добавляете соединение в запрос, типы данных в соединяемых полях должны быть одинаковые или совместимые. Например, вы не сможете создать соединение между числовым и текстовым полями, даже если значения в этих полях совпадают.
При использовании связи или соединения поля с типом данных «Счетчик» совместимы с полями числового типа, если для свойства Размер поля последних задано значение Длинное целое.
Для поля, участвующего в связи между таблицами, нельзя изменить тип данных или свойство Размер поля. Чтобы изменить свойство Размер поля, временно удалите связь. Но после изменения типа данных вы не сможете снова создать связь, пока не измените тип данных связанного поля. Дополнительные сведения о таблицах см. в статье Общие сведения о таблицах.
Справочные сведения о типах данных
Тип данных, применяемый к полю, содержит набор свойств, которые вы можете выбрать. Чтобы получить дополнительные сведения, щелкните типы данных ниже.
Как сказал.
Человек, который никогда не ошибался, никогда не пробовал сделать что-нибудь новое.
Альберт Эйнштейн
Вопросы к экзамену
Для всех групп технического профиля
Список лекций по физике за 1,2 семестр
Урок 33. Практическая работа № 21. Организация баз данных. Заполнение полей баз данных.
Практическая работа № 21
Тема: Организация баз данных. Заполнение полей баз данных.
Цель работы: изучение приемов установки связей между таблицами базы данных.
Оборудование: ПК, Windows XP Professional, MS Access 2007.
1 В соответствие с заданием создать и заполнить таблицы БД «Фирма», установить связи между ними.
2 Продемонстрировать на компьютере заполненные таблицы, схему данных.
3 Ответить на контрольные вопросы.
4 Сделать вывод о проделанной работе.
Порядок выполнения:
1. Запустите Microsoft Access.
Для этого запустите Access, создайте новую базу данных, задайте имя базы данных Фирма, выберите место сохранения Вашей базы данных (диск Х:) и нажмите кнопку Создать. (подробный порядок действий описан в лабораторной работе № 23)
Таблица Сотрудники
Таблица Клиенты
Таблица Заказы
4. Установите ключевые поля.
Отдельные таблицы, содержащие информацию по определенной теме, необходимо связать в единую структуру базы данных. Для связывания таблиц следует задать ключевые поля.
Ключ состоит из одного или нескольких полей, значения которых однозначно определяют каждую запись в таблице. Наиболее подходящим в качестве ключевого поля является Счетчик, так как значения в данном поле являются уникальными (т. е. исключают повторы).
При создании таблиц в режиме конструктора ключевое поле устанавливается автоматически. Откройте созданные Вами таблицы в режиме Конструктор и проверьте установленные ключевые поля:
1) в таблице Сотрудники ключевое поле Код сотрудника
2) в таблице Клиенты ключевое поле Код клиента
3) в таблице Заказы ключевое поле Код заказа
5. Создайте раскрывающиеся списки с помощью Мастера подстановок.
Таблица Заказы содержит поля Код сотрудника и Код клиента. При их заполнении могут возникнуть некоторые трудности, так как не всегда удается запомнить все предприятия, с которыми работает фирма, и всех сотрудников с номером кода. Для удобства можно создать раскрывающиеся списки с помощью Мастера подстановок.
Откройте таблицу Заказы в режиме Конструктора. Для поля Код клиента выберите тип данных Мастер подстановок.
В появившемся окне выберите команду Объект «столбец подстановки» будет использовать значения из таблицы или запроса и щелкните на кнопке Далее.
В списке таблиц выберите таблицу Клиенты и щелкните на кнопке Далее.
В списке Доступные поля выберите поле Код клиента и щелкните на кнопке со стрелкой >>, чтобы ввести поле в список Выбранные поля. Таким же образом добавьте поле Название компании и щелкните на кнопке Далее.
Выберите порядок сортировки списка по полю Название компании и нажмите кнопку Далее.
В следующем диалоговом окне задайте необходимую ширину столбцов раскрывающегося списка, установите флажок Скрыть ключевой столбец и нажмите кнопку Далее.
На последнем шаге Мастера подстановок замените при необходимости надпись для поля подстановок и щелкните на кнопке Готово.
Сохраните полученный результат.
6. Аналогичным образом создайте раскрывающийся список для поля Код сотрудника.
Теперь в списке таблиц выберите таблицу Сотрудники
В списке Доступные поля выберите поля Код сотрудника, Фамилия, Имя.
Порядок сортировки списка выберите по полю Фамилия.
Все остальные действия проводятся аналогично пункту 6.
7. Создайте связей между таблицами.
Существует несколько типов отношений между таблицами:
— при отношении «один-к-одному» каждой записи ключевого поля в первой таблице соответствует только одна запись в связанном поле другой таблицы, и наоборот. Отношения такого типа используются не очень часто. Иногда их можно использовать для разделения таблиц, содержащих много полей, для отделения части таблицы по соображениям безопасности;
— при отношении «один-к-многим» каждой записи в первой таблице соответствует несколько записей во второй, но запись во второй таблице не может иметь более одной связанной записи в первой таблице;
— при отношении «многие-к-многим» одной записи в первой таблице могут соответствовать несколько записей во второй таблице, а одной записи во второй таблице могут соответствовать несколько записей в первой.
Закройте все открытые таблицы, так как создавать или изменять связи между открытыми таблицами нельзя.
Выполните команду вкладки Лента Работа с базами данных кнопка Схема данных
Если ранее никаких связей между таблицами базы не было, то при открытии окна Схема данных одновременно открывается окно Добавление таблицы, в котором выбираются нужные таблицы. Для добавления в схему данных новой таблицы необходимо щелкнуть правой кнопкой мыши на схеме данных и в контекстном меню выбрать пункт Добавить таблицу.
Если связи между таблицами уже были заданы, то откроется окно Схема данных, на котором будут отображены таблицы и связи между ними.
Флажки Каскадное обновление связанных полей и Каскадное удаление связанных записей обеспечивают одновременное обновление или удаление данных во всех подчиненных таблицах при их изменении в главной таблице.Параметры связи можно изменить, нажав на кнопку Объединение. После установления всех необходимых параметров нажмите кнопку ОК.
Аналогично измените связь между таблицами Клиенты и Заказы.
В результате должна получиться схема данных, представленная на рисунке.
На схеме данных связи отображаются в виде соединительных линий со специальными значками около таблиц. Связь «один-к-многим» помечается «1» вблизи главной таблицы (имеющей первичный ключ) и «∞» вблизи подчиненной таблицы (имеющей внешний ключ). Связь «один-к-одному» помечается двумя «1» (оба поля таблиц имеют первичные ключи). Неопределенная связь не имеет никаких знаков. Если установлено объединение, то его направление отмечается стрелкой на конце соединительной линии (ни одно из объединенных полей не является ключевым и не имеет уникального индекса).
7. В таблицу Сотрудники внесите данные о 7 работниках.
8. В таблицу Клиенты внесите данные о 7 предприятиях, с которыми работает данная фирма.
9. В таблице Заказы оформите 5 заявок, поступивших на фирму.
10. Покажите работу преподавателю.
11. Ответьте на контрольные вопросы.
Контрольные вопросы:
1 С помощью чего можно создавать таблицы?
2 Что такое ключевое поле?
3 Как установить несколько ключевых полей?
4 Как установить связи между таблицами?
5 Какие существуют отношения между таблицами?
6 Что означают на схеме данных «1» и «∞»?
7 Зачем нужен Мастер подстановок?
8 Для чего нужен механизм запросов?
Методические указания к лабораторной работе № 24 Создание связей в базе данных