Материал: Курсовое проэктирование в среде ms access - Учебное пособие (Власовец А.М.)

Предмет: Информационные технологии

Просмотров: 3060


4.8.1. определение  комплекса таблиц субд microsoft access

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

Microsoft Access позволяет создавать таблицы несколькими способами. Наибольшие возможности по конструированию таблиц предоставляет способ создания таблицы в режиме конструктора. В практике проектирования таблиц этот способ применяется наиболее часто. Имена таблиц рекомендуется назначать совпадающими с именами соответствующих информационных объектов, используя буквы русского алфавита и начиная   их с прописной (заглавной) буквы.

Для таблиц базы данных определяются свойства:

•        условие на значение (проверка записей, вводимых в таблицу, на выполнение условий);

 

 

•        фильтр (условие отбора записей таблицы для просмотра

или редактирования);

•        порядок сортировки записей таблицы.

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

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

1.  Имена полей назначать одинаковыми с сокращенными именами реквизитов (или атрибутов отношений).

2.  Записывать имена строчными (маленькими) буквами и начинать

с прописной (заглавной) буквы.

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

4.  Имена полей, состоящие из нескольких слов, следует записывать подряд, разделяя их символом подчеркивания “_”, или начинать каждое составляющее слово с прописной буквы, например, Код_товара  или КодТовара.

5.  Смысловое описание поля следует приводить в графе “Описание” конструктора таблиц.

6.  В строке “Подпись” в “Свойства поля” поместить название графы первичного документа (формы).

Тип и размер поля определяются в соответствии с доменом,

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

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

должен находиться в пределах 1 ÷ 255.

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

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

 

 

Таблица 4.19. Описание типов данных MS Access

Подтип данного

Описание

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

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

Байт

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

Отсутствует

1

Целое

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

до +32 767

Отсутствует

2

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

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

до + 2 147 483 647

Отсутствует

4

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

Числа

от – 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 создает из всех ключевых полей составной ключ, а свойство Индексированное поле составляющих ключ полей имеет умалчиваемое значение “Нет”.

 

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

 

Например, ключевые поля №ТТН и КодТовара могут принимать в этом случае значения, приведенные в табл.4.20.

Таблица 4.20

№ТТН

КодТовара

510

10344

510

10350

512

10344

512

10350

 

Для полей таблиц могут быть заданы свойства:

•        формат и  маска ввода  (тип и  длина вводимых данных,

формат представления данных);

•        условие на значение (контроль вводимой информации –

на диапазон значений, на соответствие другим данным);

•        обязательное поле (контроль полноты ввода данных в поля таблицы).

Документирование проектных решений обеспечивает команда меню Сервис| Анализ| Архивариус. Вывод описания осуществляется на экран, на печать, в таблицу «Описание объекта», в файл RTF,

файл HTML или на лист Microsoft Excel.

 

4.8.1.2. Разработка схемы  данных  СУБД Access

Схема данных позволяет:

1. Установить связи между записями в таблицах.

2. Отобразить их графически на экране монитора и/или вывести на печать.

3. Обеспечить защиту от  случайного удаления или изменения

связанных данных.

4. Автоматически использовать эти связи при построении

•        запросов к БД;

•        составных (подчиненных) форм;

 

 

•        отчетов.

5. Обеспечить целостность данных.

В Microsoft Access можно установить три типа связей:

•        “один-к-одному”;

•        “один-ко-многим”;

•        “не определено”.

Последний  тип  связи  соответствует  связи  типа  “многие-комногим”.

В связи “один-к-одному” одной строке первой таблицы соответствует только одна строка во второй. Эта связь используется для разделения таблиц, имеющих большое количество полей, или для отделения части таблицы, содержащей важные или секретные данные, доступ к которым разрешен ограниченному кругу лиц.

В          связи   “один-ко-многим”     каждой            строке первой            таблицы

(главной) могут соответствовать несколько строк  во второй (подчиненной), а строка в подчиненной таблице не может иметь более одной соответствующей ей строки в главной. В главной таблице связываемое поле должно быть ключевым уникальным, а в подчиненной таблице – любым. Связь   “один-ко-многим” используется наиболее часто.

Связь “один-ко-многим” возникает, если:

•        связываемое поле подчиненной таблицы является неключевым

или

•        связываемые  поля    подчиненной таблицы         образуют        составной ключ и количество ключевых полей в ней больше,

чем в главной.

Поля связи подчиненной таблицы образуют внешний ключ.

Предполагая, что таблица соответствует информационному объекту предметной области (ПО), можно считать, что схема БД

является отображением в Microsoft Access семантической модели

ПО. При условии, что таблицы в схеме расположены по уровням иерархии, схема БД является отображением в Microsoft Access канонической формы ИЛМ ПО.

 

Связи между таблицами в Microsoft Access можно устанавливать непосредственно при проектировании запросов. В схеме БД устанавливаются не все теоретически возможные связи между таблицами, а только те, которые реально используются проектировщиком БД при построении составных экранных форм, а также для обеспечения целостности данных.

 

 

Наличие схемы данных обязательно  для проверки ссылочной целостности, построения  составных форм и ввода данных в связанные таблицы.  Схема данных позволяет объединить  отдельные реляционные таблицы,  полученные на этапе информационного анализа из первичного документа, в единое целое – информационное отображение исходного документа посредством входных форм СУБД Access.

 

Таблицы в Схеме данных рекомендуется располагать по уровням иерархии в соответствии с канонической формой ИЛМ ПО. Это делает более наглядными связи между таблицами.

 

Примечания

1.         СУБД Access позволяет включать в схему данных не только таблицы, но и запросы. Это позволяет отображать результаты

запросов в виде формы на экране и/или вывести ее на печать.

2.         В схеме данных можно установить связи между таблицами не только для обеспечения целостности данных, но и для автоматического объединения таблиц в запросах при их проектировании. Обычно это не делается, т.к.  усложняется схема данных, а связать таблицы очень просто непосредственно в запросах.

 

4.8.1.3. Ссылочная целостность

В Microsoft Access понятиям Ссылочное (целевое) отношение и Ссылающееся отношение соответствуют понятия Главная таблица и Подтаблица.

Главная таблица  – это таблица на стороне “один” при связи двух таблиц с отношением “один-ко-многим”. В главной таблице должно существовать ключевое поле, а все записи в ней должны быть уникальными. Подтаблица  – это таблица на стороне “многие” при связи двух таблиц с отношением “один-ко-многим”. Одна и та же таблица может в одной связи быть главной, а в другой – подтаблицей.

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

Изменение целостности данных в Microsoft Access  производится при помощи диалогового окна “Изменение связей”.

Для вывода окна на экран следует дважды щелкнуть левой кнопкой мыши по линии связи таблиц или щелкнуть по ней один раз

 

 

правой кнопкой мыши и выбрать пункт “Изменить связь…”. Для обеспечения целостности данных необходимо установить одноименный  флажок  в  окне     “Изменение  связей”.  Тогда  Microsoft Access обеспечивает выполнение следующих правил:

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

2.   Не допускается удаление записи из главной таблицы, если существуют связанные с ней записи в подчиненной таблице.

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

Для того чтобы можно было изменять и/или удалять записи в связанных таблицах, сохраняя при этом целостность данных, в Microsoft Access применяется каскадирование. С этой целью следует установить флажки Каскадное обновление связанных полей и Каскадное удаление связанных полей. Если установлен флажок Каскадное обновление связанных полей, то при изменении ключевого поля главной таблицы автоматически изменяются и соответствующие значения связанных записей. Если установлен флажок Каскадное удаление связанных полей, то при удалении записи в главной таблице удаляются и все связанные записи в подчиненной таблице.

 


Загрузка...