Структура таблицы должна быть спроектирована и создана перед вводом в таблицу каких-либо данных. Она определяет, какие данные таблица будет хранить, а также правила, ассоциированные с вводом, изменением или удалением данных (ограничения).
Правильная разработка таблиц включает много аспектов, базовыми из которых являются:
- избегание дублирования информации;
- для каждой категории информации следует использовать отдельную таблицу (например, не стоит хранить описания отделов в таблице, которая хранит информацию о служащих);
- необходимо обеспечить однозначную идентификацию записи: запись должна однозначно определяться значением ключа и отсутствие избыточности: никакое поле нельзя удалить из ключа, не нарушая при этом свойства однозначной идентификации.
- не хранить значения, которые могут быть легко вычислены по формулам из существующих значений.
- для полей необходимо выбирать подходящий тип данных - это поможет уменьшить размеры базы данных и увеличит скорость выполнения операций.
В Microsoft Access существует четыре способа создания пустой таблицы:
1. Использование мастера баз данных для создания всей базы данных, содержащей все требуемые отчеты, таблицы и формы, за одну операцию. Мастера баз данных создает новую базу данных, его нельзя использовать для добавления новых таблиц, форм, отчетов в уже существующую базу данных.
2. Мастер таблиц позволяет выбрать поля для данной таблицы из множества определенных ранее таблиц, таких как деловые контакты, список личного имущества или рецепты.
3. Ввод данных непосредственно в пустую таблицу в режиме таблицы. При сохранении новой таблицы в Microsoft Access данные анализируются и каждому полю присваивается необходимый тип данных и формат.
4. Определение всех параметров макета таблицы в режиме конструктора.
Структура таблицы включает следующую информацию:
Имя таблицы | Имя, по которому к таблице можно обратиться в свойствах, методах и операторах SQL. |
Столбцы таблицы | Категории информации, сохраненной в таблице. Каждый столбец имеет имя и тип данного. |
Табличные и столбцовые ограничения | Ограничения целостности, определенные на уровне таблицы или на уровне столбца. |
Независимо от метода, примененного для создания таблицы, всегда имеется возможность использовать режим конструктора для дальнейшего изменения макета таблицы. Рассмотрим более подробно создание таблицы в режиме конструктора. Прежде необходимо переключиться в окно базы данных. Для переключения из другого окна в окно базы данных используется клавиша F11.
1. На вкладке Таблица нажать кнопку Создать.
2. Дважды щелкнуть элемент Конструктор.
3. Определить в таблице каждое поле.
4. Определить ключевые поля до сохранения таблицы. Если они не были определены, то при сохранении таблицы выдается вопрос, нужно ли их создавать.
5. Для сохранения таблицы нажмите кнопку Сохранить на панели инструментов, а затем введите имя таблицы, следуя соглашениям об именах объектов Microsoft Access.
Для добавления поля в конец структуры таблицы нужно выбрать первую пустую строку структуры. Для вставки поля в середину структуры следует выбрать строку, над которой требуется добавить новое поле, и нажать кнопку Добавить строки на панели инструментов.
В каждой создаваемой таблице нужно стараться включать столбец или набор столбцов первичного ключа. Первичные ключи необходимы для установления между таблицами отношений один-ко-многим. Каждая запись в таблице должна иметь первичный ключ, т.е. идентификатор (или адрес), значение которого однозначно определяет эту и только эту запись. В противном случае невозможно отличить одну запись от другой. Обычно используют придуманные разработчиком уникальные цифровые значения – код, табельные номера и т.д. Если при просмотре подготовленной БД в паре таблиц обнаружится одноименное поле, которое не входит в первичный ключ ни одной из этих таблиц, система не сможет контролировать согласованность значений таких полей. Кроме первичного, могут использоваться так называемые простые (или вторичные) ключи таблицы. Простых ключей может быть множество. Они используются при упорядочивании (индексировании) таблиц. Однако имеются специальные случаи, когда первичный ключ целесообразнее не создавать. Например, для некоторых таблиц индекс, ассоциированный с первичным ключом, может неприемлемо снижать производительность ввода и модификации данных.
В составном ключе, включающем несколько полей, нужно использовать ровно столько полей, сколько для него необходимо.
В Microsoft Access можно выделить три типа ключевых полей: счетчик, простой ключ и составной ключ.
Поле типа Счетчик: Для создания полей, в которые при добавлении записи автоматически вводится число, в Microsoft Access существует тип данных Счетчик. При этом созданный для записи номер уже не может быть удален или изменен. Наиболее часто используется счетчик последовательно возрастающих чисел.
Если до сохранения созданной таблицы ключевые поля не были определены, то при сохранении будет выдано сообщение о создании ключевого поля. При нажатии кнопки Да будет автоматически создано ключевое поле счетчика.
Простой ключ: Если поле содержит уникальные значения, такие как коды или инвентарные номера, то это поле можно определить как ключевое. Если устранить повторы путем изменения значений невозможно, то следует либо добавить в таблицу поле счетчика и сделать его ключевым, либо определить составной ключ.
Составнойключ: В случаях, когда невозможно гарантировать уникальность значений каждого отдельного поля, можно создать ключ, состоящий из нескольких полей. Чаще всего такая ситуация возникает для таблицы, используемой для связывания двух таблиц в отношении "многие-к-многим". Примером такой таблицы может служить складская база данных, в инвентарной книге которой используются один основной и один или несколько вспомогательных инвентарных номеров.
Для создания ключевых полей таблицы:
1. В режиме конструктора выделить одно или несколько полей, которые необходимо определить как ключевые. Для выделения одного поля нужно щелкнуть область выделения строки нужного поля (кнопка слева строки). Выделить несколько полей можно, удерживая при выборе каждого поля клавишу «Сtrl».
2. Нажать кнопку Ключевое поле на панели инструментов.
Для повышения производительности операций запросов и сортировки данных таблицы следует использовать индексы.
Индексы – объекты базы данных, которые обеспечивают быстрый доступ к отдельным строкам в таблице, а также используются для поддержания в таблицах некоторых типов ключевых ограничений (создаются автоматически при определении ограничения).
Создание или удаление индекса никак не воздействует на определение или данные индексированной таблицы.
Чтобы создать индекс для одного поля надо:
1. В режиме конструктора в панели структуры таблицы (верхняя часть окна) выбрать поле, для которого требуется создать индекс.
2. В панели свойств (нижняя часть окна) для свойства Индексированное поле установить значение "Да (Допускаются совпадения)" или "Да (Совпадения не допускаются)".
Убедиться, что в данном поле совпадающих записей нет, можно, выбрав значение "Да (Совпадения не допускаются)".
Чтобы создать составной индекс:
В режиме конструктора на панели инструментов нажать кнопкуИндексы.
1. В первой пустой строке поляИндекс ввести имя индекса. Для индекса можно использовать либо имя одного из индексируемых полей, либо другое подходящее имя.
2. В полеИмя поля нажать стрелку и выбрать в списке первое поле, для которого требуется создать индекс.
3. В следующей строке поляИмя поля указать второе индексируемое поле (для данной строки поле Индекс следует оставить пустым). Повторить эти действия для всех полей, которые необходимо включить в индекс. В составном индексе может быть до 10 полей.
По умолчанию, установлен порядок сортировки "По возрастанию". Для сортировки данных полей поубыванию в полеПорядок сортировки в окне индексов нужно указать значение "По убыванию". Сами поля индекса могут не быть ключевыми.
Тип данного поля таблицы можно выбрать в раскрывающемся списке в столбце Тип данных при работе в режиме Конструктора.
В таблице могут быть заданы следующие типы полей:
- Текстовый: Текст или комбинация текста и чисел, например, адрес, а также числа, не требующие вычислений, например, номера телефонов, номенклатурные номера или почтовый индекс. Размер поля - до 255 символов.
- Поле MЕМО: Длинный текст или числа, например, пометки или описание. Размер поля - до 64 000 символов.
- Числовой: Числовые данные, используемые для математических вычислений, за исключением вычислений, включающих денежные операции (используйте денежный тип). Для определения числового типа определите свойство Размер поля (FieldSize). Размер поля - 1, 2, 4 или 8 байт.
- Дата/время: Даты и время. 8 байт.
- Денежный: Значения валют. Денежный тип используется для предотвращения округлений во время вычислений. Предполагает до 15 символов в целой части числа и 4 — в дробной. Размер поля - 8 байт.