Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УЧ_ПОСОБИЕ ПО КР.doc
Скачиваний:
2
Добавлен:
29.08.2019
Размер:
1.21 Mб
Скачать

4.1.2. Проектирование таблиц базы данных

4.1.2.1.Определение комплекса таблиц субд Microsoft Access

Таблицы СУБД Microsoft Access строятся на основе нормализованных отношений, получаемых в соответствии с алгоритмом построения семантической модели ПО, т.е. каждому отношению должна соответствовать одна таблица Access Microsoft Access. Отношения должны находиться, как минимум, в 3НФ. Рекомендуется имя таблицы назначать таким же, как имя отношения.

Microsoft Access позволяет создавать таблицы несколькими способами. Наибольшие возможности по конструированию таблиц предоставляет способ создания таблицы в режиме конструктора. В практике проектирования таблиц этот способ применяется наиболее часто.

        1. Описание полей

Имена полей желательно назначать одинаковыми с сокращёнными именами атрибутов отношений [2]. Длинные имена, с количеством символов больше десяти, применять не рекомендуется, т.к. их неудобно использовать при построении выражений в запросах. Смысловое описание поля следует назначать в Подписи.

Тип и размер данного определяются в соответствии с доменом, на котором определено поле таблицы, т.е. ограничениями предметной области (см. табл. 11).

Размер поля, задаваемый в таблице, должен быть не меньше, чем его возможное максимальное значение.

При назначении типа поля для цифровых кодов целесообразно выбрать тип Текстовый с количеством символов, равным числу позиций кода.

Размер поля типа Текстовый определяется максимальным длиной реквизита в символах (см. табл. 11) и в Microsoft Access должен находиться в пределах 1  255.

Размер поля типа Числовой зависит от его подтипа в соответствии с таблицей 12.

Microsoft Access отводит на машинном носителе для всех подтипов полей типа Числовой количество байтов, указанное в графе “Размер в байтах”, независимо от количества цифр в значении числа. Если размер числового поля, задаваемый в таблице, больше, чем он определён в домене, то на машинном носителе останутся незаполненными лишние позиции, и память будет расходоваться неэкономно. Кроме того, рекомендуется использовать тип целый, если исходные данные не имеют дробной части, т.к. целые числа обрабатываются в компьютере быстрее.

Таблица 12

Подтип

Описание

Дробная часть

Размер в байтах

Байт

Целые положительные числа от 0 до 255

Отсутствует

1

Целое

Целые числа от –32 768 до +32 767

Отсутствует

2

Д линное целое

Целые числа от от – 2 147 483 648 до + 2 147 483 647

Отсутствует

4

Продолжение таблицы 12

Подтип

Описание

Дробная часть

Размер в байтах

Одинарное с плавающей запятой

Числа от – 3,40282310–38 до + 3,40282310+38

7 знаков

4

Двойное с плавающей запятой

Числа от – 1,79769310–308 до + 1,79769310+308

15 знаков

8

Денежный

Числа от –922337203685447,5808 до +922337203685447,5808

4 знака

4

Действительное

Целые числа от – 10+28 – 1 до + 10+28 – 1

Отсутствует

12

Кроме типов данных Текстовый и Числовой в Microsoft Access имеются следующие типы:

  1. MEMO,

  2. Дата/Время,

  3. Денежный,

  4. Счётчик,

  5. Логический,

  6. Поле объекта OLE,

  7. Гиперссылка,

  8. Мастер подстановок… .

Тип данных MEMO относится к символьному виду данных. Поле этого типа предназначено для хранения больших текстовых данных: предложений, абзацев, текстов суммарной длиной до 64000 символов.

Тип данных Счётчик относится к числовому виду данных. Значения его – уникальные последовательно возрастающие на 1 или псевдослучайные числа, имеющие подтип Длинное целое. Обычно используется в качестве ключевого поля таблицы, если пользователь по каким-либо причинам не может (имеются полностью повторяющиеся строки) или не хочет использовать реквизиты информационного объекта для создания ключевого поля. Значения полей этого типа Microsoft Access создаёт автоматически, и пользователь изменить их не может.

Тип данных Логический также относится к числовому виду данных. Поле этого типа может содержать одно из двух возможных значений – Истина или Ложь – и использует величину –1 для представления значения Истина и величину 0 – для Ложь. В памяти компьютера имеет размер один бит. Обычно используется в логических выражениях.

Тип данных Денежный относится к числовому виду данных. Предназначен для хранения денежных сумм и используется для предотвращения округления во время вычислений. Имеет точность до 15 цифр в целой части и до 4 в дробной. В памяти машины занимает 8 байт. Может использоваться для выполнения расчётов с высокой точностью, не обязательно денежных.

Тип данных Дата/Время используется при хранении даты и времени в специальном числовом формате, причём дата хранится в целой части значения поля типа Дата/Время, а время – в дробной. В памяти машины занимает 8 байт.

Тип данных Поле объекта OLE относится к виду данных “Объекты произвольного типа”. Поле этого типа может содержать рисунок, диаграммы, звукозапись, рабочий лист электронной таблицы и другие объекты данных OLE из приложений Windows.

При использовании типа данных Мастер подстановок мастер создаёт столбец подстановок, в котором отображается список возможных значений для выбора значений поля. Другими словами, домен этого поля определяется на другом домене, используя значения из таблицы, запроса или фиксированного набора значений. Например, столбцом подстановки может быть перечень кодов товаров из таблицы “Товары” или созданный пользователем список дней недели.

Имена полей, их типы и свойства можно задать во время построения таблицы в режиме конструктора.

В “Свойствах поля” конструктора таблиц можно установить размер поля для полей типов Текстовый, Числовой и Счётчик. В окне “Свойства поля” можно установить также еще ряд свойств. Ниже рассмотрены некоторые свойства, которые часто используются и правильное применение которых имеет наиболее существенное значение при проектировании таблиц СУБД.

Подпись. Наличие подписи позволяет заменить в изображении таблицы, формы или отчёта названия полей текстом подписи. Например, если поле имеет имя NDOG, а подпись – Номер договора, то в качестве названий колонок таблиц или полей формы или отчёта будет текст Номер договора (вместо NDOG).

Значение по умолчанию. Применение этого свойства позволяет автоматически вводить в поле каждой очередной записи таблицы заданное пользователем фиксированное значение. В то же время пользователь может изменить в процессе ввода значение по умолчанию для любой вводимой записи. Свойство удобно использовать для часто встречающихся значений поля таблицы. Значение 0 (ноль, не Null!) СУБД Microsoft Access устанавливает для числовых полей реквизитов-оснований по умолчанию.

З

начение по умолчанию может вводить пользователь при проектировании таблицы непосредственно в строке определяемого поля или вычисляться при помощи Построителя выражений, который вызывается при нажатии на кнопку справа от поля ввода строки Значение по умолчанию.

Обязательное поле. Это свойство позволяет установить, является ли обязательным задание значения поля. Свойство может иметь одно из двух значений: Да или Нет (по умолчанию – Нет). Если свойство имеет значение Да, то при вводе данных в строку таблицы необходимо задать значение поля, т.е. оно не может иметь значение Null. Например, если необходимо, чтобы в каждой строке таблицы “Спецификация договора” вводилось количество товара, то значение рассматриваемого свойства соответствующего поля должно быть Да.

Индексированное поле. Данное свойство применяется для образования простого индекса. Использование индексов ускоряет поиск данных с заданным значением, но замедляет обновление таблиц.

Свойство Индексированное поле может иметь следующие значения:

Значение Описание

Нет Поле не индексировано

(по умолчанию)

Да Поле индексировано.

(Допускаются Допускается повторение

совпадения) значений индексного

поля

Да Поле индексировано.

(Совпадения Повторение значений

не допускаются) индексного поля

не допускается

Для простого ключа таблицы Microsoft Access автоматически создаёт индекс, и если ключ простой, то свойство Индексированное поле ключевого поля получает значение “Да (Совпадения не допускаются)”. Если ключ составной, то Microsoft Access создаёт из всех ключевых полей составной ключ, а свойство Индексированное поле составляющих ключ полей имеет умалчиваемое значение “Нет”.

Для полей составного ключа следует устанавливать для свойства Индексированное поле значение “Да (Допускаются совпадения)”, что позволит иметь повторяющиеся значения составляющих ключ полей.