Под даталогической моделью понимается определение структуры БД, выраженное в терминах конкретной СУБД.
В СУБД Access поля таблиц задаются следующими атрибутами:
Имя – имя поля длинной до 64 символов (первый символ – не пробел, остальные не .! ‘ [ ]);
Тип – один из предопределенных типов данных:
текстовый – строка длиной до 255 символов;
числовой – число определенного подтипа: байт – число размером 1 байт без дробной части и знака; целое – число без дробной части размером 2 байта (от –32768 до 32767); длинное целое – 4-байтовое число от –2147483648 до 2147483647 (замечание: в 32-разрядной среде Windows 95 или NT среди целых чисел быстрее всего происходит обращение именно с длинными целыми, несмотря на их больший размер); с плавающей точкой одинарное – 4 байта, до 7 знаков после запятой, от –3,402823Е38 до 3,402823Е38, двойное – 8 байт, до 15 знаков после запятой, диапазон» ±1,0 Е320;
денежный – 4 байта, 4 знака после запятой, диапазон» ± 9,2233 Е14;
логический – поля принимающие одно из значений Да\Нет, Истина\Ложь, Вкл\Выкл;
|
|
счетчик – автоматически генерируемые последовательным или случайным образом номера для каждой новой звписи (такое поле не редактируется пользователем);
дата\время – поля для хранения дат и времени в выбранном формате;
OLE-объекты – для хранения рисунков, звуковых и других данных;
MEMO – поля для хранения текстовых данных длинной до 64Кб;
Гиперсвязь – поля, содержащие адреса Web-страниц, которые сами могут быть Web-страницами Internet;
Размер – размер данных для полей типа Текст и Число;
Число десятичных знаков – количество знаков после запятой для полей типа Число, Текстовый (от 1 до 255 байтов), Счетчик (длинное целое - 4 байта и код репликации - 128 байт);
Формат – вид вывода значений поля;
Маска ввода – строка символов, задающих форму для вводимых данных;
Подпись – заголовок поля в таблице или подпись в форме;
Значение по умолчанию – значение, присваиваемое полю в новых записях;
Условие на значение – логическое выражение для проверки введенного значения;
Сообщение об ошибке – сообщение, появляющееся при возвращении выражением, стоящим в Условии на значение значения Ложь;
Обязательное поле – является ли данное поле обязательным для заполнения или нет (если Да, то пользователь не выведет курсор из этого поля пока не введет какое-либо значение);
Индексированное поле – является ли данное поле индексируемым или нет, причем значение Да имеет в свою очередь следующие варианты: Совпадения допускаются и Совпадения не допускаются (в последнем случае СУБД не допустит ввод в данное поле значения ранее уже введенного).
Поле, однозначно идентифицирующее каждую запись, нужно сделать Ключевым, что будет соответствовать построению уникального (с проверкой на отсутствие повторяющихся значений) индекса по этому полю.
|
|
В табл. 1 описана структура каждой будущей таблицы БД в виде текстовых таблиц со значениями этих атрибутов.
Таблица 1
Имя поля | Тип | Размер | Обязательное | Индекс / Ключ |
Таблица Преподаватели | ||||
КодПреподавателя | Счетчик | Длинное целое | Да | Совп. не допуск. /Ключ |
Фамилия | Текст | Нет | Совп. допуск. | |
Имя | Текст | Нет | – | |
Отчество | Текст | Нет | – | |
Таблица Группа | ||||
Группа | Текст | Да | Совп. не допуск. /Ключ | |
Количество | Числовой | Байт | Нет | – |
Специализация | Текст | Нет | – | |
Таблица Студенты | ||||
КодСтудента | Счетчик | Длинное целое | Да | Совп. не допуск. /Ключ |
Группа | Текст | Да | Совп. допуск. | |
Фамилия | Текст | Нет | – | |
Имя | Текст | Нет | – | |
Отчество | Текст | Нет | – | |
Таблица Дисциплина | ||||
КодДисциплины | Счетчик | Длинное целое | Да | Совп. не допуск. /Ключ |
Продолжение табл. 1
Дисциплина | Текст | Да | – | |
Группа | Текст | Да | Совп. допуск. | |
ВидЗанятий | Текст | Нет | – | |
Часов | Числовой | Длинное целое | Нет | – |
ВсегоЧасов | Числовой | Длинное целое | Нет | – |
ЧислоСеместров | Числовой | Байт | Нет | – |
КодПреподавателя | Числовой | Длинное целое | Да | Совп. допуск. |
Таблица Контроль | ||||
КодКонтроля | Счетчик | |||
КодДисциплины | Числовой | |||
Контроль | Текст | |||
Таблица Успеваемость | ||||
КодУспеваемости | Счетчик | |||
КодСтудента | Числовой | |||
КодКонтроля | Числовой | |||
Результат | Числовой | |||
Таблица Занятия | ||||
КодЗанятия | ||||
КодДисциплины | ||||
Дата | ||||
Пара | ||||
Таблица Пропуски | ||||
КодПропуска | ||||
КодЗанятия | ||||
КодСтудента |
Замечание: подписи полей соответствуют их именам, но с пробелами между словами; формат применяется только для полей типа Дата\Время как Краткий формат даты; неуказанные атрибуты оставлены без изменений (со значениями по умолчанию).