
- •Тема 5. Основы проектирования баз данных средствами субд
- •5.1. Уровни моделей данных
- •5.2. Основные понятия реляционной модели данных
- •5.3. Модель «Сущность-Связь»
- •5.4. Создание бд средствами субд Access
- •5.4.1. Создание таблиц и работа с таблицами
- •Создание таблицы в существующей базе данных
- •Общие сведения о типах полей
- •Применение тех или иных типов данных
- •Дополнительные свойства полей
- •Типы данных в связях и соединениях
- •Определение ключевых полей
- •Задание или изменение первичного ключа
- •Связи между таблицами
- •Преимущества использования связей
- •Определение связей между таблицами
- •5.4.2. Работа с формами
- •Создание формы инструментом Форма
- •Создание формы Разделенная форма
- •Создание формы Несколько элементов
- •Создание формы при помощи Мастера форм
- •Создание формы инструментом Пустая форма
- •5.4.3. Запросы-выборки
- •5.4.4. Язык sql. Оператор Select
- •Insert - добавить строки в таблицу;
- •Выбрать книги, которые не выданы читателям.
- •Выбрать читателей, которые имеют задолженность более месяца.
- •5.5. Задачи для самостоятельного решения
- •5.6. Лабораторная работа по теме «Основы проектирования баз данных средствами субд access»
- •5.6.1. Вопросы, подлежащие изучению
- •5.6.2. Общее задание
- •Выберите вариант индивидуального задания из табл. 5.6-1.
- •Создайте бд средствами субд Access в соответствии с разработанной er-моделью:
- •Создайте запросы либо с помощью Конструктора запросов либо с помощью соответствующего Мастера запросов, а затем их выполните.
- •Просмотрите запросы в режиме sql.
- •5.6.3. Индивидуальные варианты заданий
- •5.6.4. Содержание отчета
- •5.6.5. Пример создания бд «Экзамены»
- •Разработка бд средствами субд Access:
- •5.7. Контрольные вопросы
Дополнительные свойства полей
После создания поля и выбора его типа данных можно настроить дополнительные свойства поля. Тип данных поля определяет, какие другие свойства можно задать. Например, можно управлять размером текстового поля с помощью его свойства Размер поля.
Для числовых и денежных полей свойство Размер поля является особенно важным, поскольку определяет диапазон значений поля. Например, одноразрядное числовое поле может содержать целые числа в диапазоне от 0 до 255.
Свойство Размер поля также определяет объем места на диске, занимаемого каждым значением числового поля. В зависимости от размера поля число может занимать 1, 2, 4, 8, 12 или 16 байт.
Текстовые поля и поля MEMO имеют переменный размер. Для этих типов данных свойство Размер поля задает максимальный объем места, доступный для одного значения.
Типы данных в связях и соединениях
Связь между таблицами — это отношение между общими полями (столбцами) в двух таблицах. Существуют следующие разновидности связей: один-к-одному, один-ко-многим и многие-ко-многим.
Соединение — это операция SQL, объединяющая данные из двух источников в одну запись в наборе записей запроса на основе значений указанного общего поля в источниках. Соединение может быть внутренним, левым внешним или правым внешним.
При создании связи между таблицами или добавлении соединения в запрос связываемые поля должны иметь одинаковые или совместимые типы данных. Например, невозможно создать соединение между числовым и текстовым полями, даже если значения в них совпадают.
В связи или соединении поля с типом данных Счетчик совместимы с полями числового типа, если для свойства Размер поля последних задано значение Длинное целое.
Для поля, используемого в связи между таблицами, невозможно изменить тип данных или свойство Размер поля. Чтобы изменить значение свойства Размер поля, можно временно удалить связь, однако если изменить тип данных поля, для воссоздания такой связи придется сначала изменить и тип данных связанного поля
Определение ключевых полей
При создании многотабличной базы данных важно правильно определить связи между таблицами и задать ключи.
Поля, формирующие связь между таблицами, называются ключами. Ключ обычно состоит из одного поля, однако может включать и несколько. Есть два вида ключей:
Первичный ключ. В таблице может быть только один первичный ключ. Он состоит из одного или нескольких полей, однозначно определяющих каждую запись в этой таблице. Часто в качестве первичного ключа используется уникальный идентификатор, порядковый номер или код. Например, в таблице Клиенты каждому клиенту может быть назначен уникальный код клиента. Поле кода клиента является первичным ключом этой таблицы. Если первичный ключ состоит из нескольких полей, он обычно включает уже существующие поля, формирующие в сочетании друг с другом уникальные значения. Например, в таблице с данными о пользователях в качестве первичного ключа можно использовать сочетание фамилии, имени и даты рождения.
Внешний ключ. В таблице может быть один или несколько внешних ключей. Внешний ключ содержит значения, соответствующие значениями первичного ключа другой таблицы. Например, в таблице Заказы каждый заказ может включать код клиента, соответствующий определенной записи в таблице клиентов. Поле кода клиента является внешним ключом таблицы Заказы.
Создавая таблицы, Access может автоматически создать первичный ключ, поставив перед первым указанным в структуре полем поле Код и задав для него тип Счетчик. Но далеко не всегда такой автоматически определенный ключ бывает корректен. В большинстве случаев ключи должен определять сам разработчик БД.