Создание структуры таблицы
База данных может содержать различные объекты (рис.1). Однако основным является таблица, поскольку в случае отсутствия таблиц БД попросту не существует, т.к. данные некуда записывать. Самая простая БД имеет хотя бы одну таблицу. Создание таблицы БД предполагает:
1. Определение структуры таблицы.
2. Заполнение таблицы данными.
Структуру обычной двумерной таблицы образуют столбцы и строки.
Структура таблицы БД образуется полями и записями, которые являются аналогами столбцов и строк обычной таблицы соответственно.
Поле - это элементарная единица логической организации данных, которая соответствует отдельной неделимой единице информации - реквизиту.
Логически завершенный набор значений полей образует строку или запись. Запись - это совокупность полей, соответствующих логически связанным реквизитам. Структура записи определяется составом входящих в нее полей.
Если записей в таблице еще нет, ее структура образована только набором полей. При редактировании состава полей базовой таблицы (или их свойств) изменяется и ее структура, т.е. получается новая БД. В силу этого после каждого изменения структуры БД необходимо выполнить подтверждение ее изменения.
Создать таблицу можно
Ø в режиме конструктора;
Ø с помощью мастера таблиц;
Ø путем ввода данных (рис.1).
Создание таблицы в режиме конструктора является основным способом, поскольку предоставляет наиболее гибкие и мощные возможности по определению параметров создаваемой таблицы. Активизация режима Конструктор может быть осуществлена несколькими способами:
1. Выделить группу объектов Таблицы - активизировать Создание таблицы в режиме конструктора;
2. Выделить группу объектов Таблицы - активизировать в окне базы данных команду Создать - в окне Новая таблица выбрать режим Конструктор (рис.2).
Оба варианта используются для создания новой таблицы.
Независимо от способа создания редактирование и просмотра структуры существующей таблицы можно выполнить в режиме Конструктор. Дляэтого следует в группе объекта Таблицы выделить объект группы - имя требуемой таблицы и активизировать команду Конструктор (рис.3).
Создание таблицы в режиме конструктора структура таблицы задается пользователем в окне Структура таблицы (рис.4), которое состоит из двух областей. В первой для каждого поля указывается его имя, тип данных и по желанию описание поля (назначение данных поля или комментарий). Для отображения и описания свойств каждого поля таблицы используется область Свойства поля окна Структура таблицы.
Имя поля определяет, как следует обращаться к данным этого поля при автоматических операциях с базой (по умолчанию имена полей используются в качестве заголовков столбцов таблиц). Каждое поле в таблице должно иметь уникальное имя.
Тип поля определяет тип данных конкретного поля. Тип данных зависит от тех значений, которые предполагается вводить, и операций, которые будут выполняться над этими значениями. Тип данных выбирается из списка типов данных каждого поля (рис.4). В MS Access используются следующие типы данных:
§ Текстовый - для хранениятекста или чисел, не требующих проведения расчетов, например, номера телефонов (до 255 символов);
§ Поле Мемо - для хранения длинный текстов или комбинации текста и чисел (до 65535 символов);
§ Числовой - для храненияцелых или вещественных чисел;
§ Дата / время - для хранения календарных дат и текущего времени;
§ Денежный - для хранения чисел в денежных форматах;
§ Счетчик - автоматически назначаемое для каждой добавляемой строки уникальное целое значение. Обычно используется для порядковой нумерации записей;
§ Логический - для хранения данных, принимающих только два значения – Да и Нет;
§ Поле объекта OLE (Object Linked Embedding) – для хранения внедряемых объектов, например, графическое изображение или документ MS Word;
§ Гиперссылка – для хранения ресурсов сети Интернет.
Кроме выбора типа данных для полей конструктор позволяет настраивать их свойства более детально в области Свойства поля окна Структура таблицы. На вкладке Общие задаются групповые свойства данных каждого поля. Вид списка свойств зависит от типа данных поля. На рис. 5 представлены свойства текстового поля.
Наиболее часто используемые свойства полей:
§ Размер поля - задает максимальный размер данных. Для текстового поля – это допустимое количество размещаемых в поле символов. Для поля с числовым типом данных можно задать использование целых чисел или чисел с плавающей точкой;
§ Формат поля - задает формат отображения столбца таблицы БД на экране или печати;
§ Число десятичных знаков - задает для числового и денежного типов данных число знаков после запятой;
§ Маска ввода - определяет форму, в которой данные вводятся в поле (средство автоматизации ввода данных);
§ Подпись - задает текст, который будет отображаться в качестве заголовка столбца таблицы. Если свойство не задано, в качестве заголовка будет использовано имя поля;
§ Значение по умолчанию - вводится в ячейки поля автоматически. Если свойство не определено вводится пустое значение Null;
§ Условие на значение - задает ограничения на вводимые значения и позволяет осуществлять контроль ввода;
§ Сообщение об ошибке - задает текст сообщения, выводимый на экран при нарушении условия на значение;
§ Обязательное поле - определяет необходимость обязательного заполнения данного поля при формировании записи;
§ Индексированное поле - указывает, следует ли для данного поля строить индекс. Индекс позволяет ускорить выборку и сортировку данных из этого поля, автоматически исключить дублирование информации, но может несколько замедлить обновление данных.
Вкладка Подстановка позволяет настраивать свойства столбцов таким образом, чтобы при просмотре таблицы отображались не те данные, которые хранятся в этих столбцах (если эти данные малоинформативны), а связанные с ними данные из другого источника. Подробнее настройка подстановки рассматривается ниже.
Ввод данных таблицы
Ввод данных - это создание записей таблицы путем заполнения конкретными значениями ячеек каждого поля. Активизация режима ввода данных осуществляется двойным щелчком левой кнопки мыши по названию таблицы в окне базы данных или с помощью команды Открыть этого окна, предварительно выделив имя требуемой таблицы.
Заполнение ячеек полей таблицы может осуществляться 1) с помощью непосредственного ввода значений или 2) Мастера подстановок, а также 3) автоматически.
Непосредственный ввод данных - самый распространенный способ создания записей таблицы. Используется в тех случаях, когда вводимое значение поля или уникально, или дублирование информации встречается крайне редко. Например, фамилия студента, название организации и т.д.
Пример. Сформировать справочник факультетов университета, содержащий краткое и полное наименование каждого факультета.
Решение:
1. Формирование структуры таблицы Факультеты. Таблица состоит из двух полей текстового типа (рис.6). Для хранения сокращенного названия факультета определено 7, а полного - 50 символов.
2. Заполнение таблицы.
Мастер подстановок используется в тех случаях, когда число возможных вариантов значений поля ограничено. Ввод данных с помощью сводится к выбору конкретного значения из списка значений поля. Для формирования списка значений могут быть использованы данные конкретного поля конкретной таблицы или список формируется вручную.
Объект подстановки - значения таблицы.
Пример. Сформировать справочник групп университета, содержащий название группы и краткое наименование факультета, к которому относится данная группа.
Поскольку справочник факультетов уже создан, можно воспользоваться его значениями при вводе записей формируемой таблицы с помощью Мастера подстановок.
Решение:
1. Формирование структуры таблицы Группы. Таблица состоит из двух полей (Название и СокрНазвание) текстового типа (рис.7) для хранения значений названия группы и краткого наименования факультета. Размер каждого поля определен 7 символами. Если для поля Название количество символов может быть иным, то размер поля СокрНазвание определен размером поля с аналогичным названием таблицы Факультеты.
2. Формирование списка значений краткого наименования факультета осуществляется в следующей последовательности:
- выбрать для поля СокрНазвание тип данных Мастер подстановки (рис.8);
- в окне Создание одстановки выбрать режим Объект «столбец подстановки» будет использовать значения из таблицы или запроса (рис. 9);
- указать таблицу Факультеты;
- из списка Доступные поля с помощью клавиши сформировать Выбранные поля (рис.10);
- можно указать порядок сортировки списка и ширину столбца с данными подстановки;
- после выполненных манипуляций сформирован список подстановок для поля СокрНазвание таблицы Группы. Вкладка Подстановка окна создания структуры таблицы представлена рис. 11. При необходимости ввод данных может быть ограничен только элементами списка подстановки (рис.11).
3. Ввод данных (рис.12).
Объект подстановки - фиксированный набор значений
Пример. Сформировать таблицу Студенты с данными о студентах университета следующей структуры
Имя поля | Тип данных | Примечание |
КодСтудента | Счетчик | Уникальный номер студента |
Фамилия | Текстовый | 20 символов |
Имя | Текстовый | 15 символов |
Отчество | Текстовый | 20 символов |
Факультет | Текстовый | 7 символов |
Группа | Текстовый | 7 символов |
Тип обучения | Текстовый | 1 символ |
.
Для ввода значений поля Факультет и Группа использовать подстановку данных из таблиц Факультеты и Группы соответственно. Для ввода значений поля Тип обучения использовать фиксированный набор значений {Б,К}, где Б и К – тип обучения бюджетное или коммерческое соответственно.
Создание фиксированного набора значений для поля Тип обучения:
- активизировать Мастер подстановки;
- выбрать режим ввода фиксированного набора значений;
- сформировать список подстановки (рис.13). Вкладка Подстановка представлена на рис.14.
Автоматически заполняются поля, тип которых Счетчик, или определено значение свойства Значение по умолчанию. На рис.14 представлена структура таблицы Студенты, поле КодСтудента имеет тип Счетчик, а для поля Гражданство определено значение по умолчанию РБ (Республика Беларусь).
В предыдущих примерах были рассмотрены достаточно простые варианты ввода текстовых данных и данных типа Счетчик. Создадим еще одну таблицу, содержащую данные о платежах студентов. Каждый студент может иметь несколько платежей. Структура таблицы Платежи:
Имя поля | Тип данных | Примечание |
КодСтудента | Числовой | Использовать таблицу подстановки из данных таблицы Студенты с необходимой для полной идентификации студента информацией |
ДатаПлатежа | Дата/время | Дата платежа. Для ввода данных использовать маску ввода |
Цель | Текстовый | 20 символов. Использовать список фиксированных значений |
СуммаОплаты | Денежный | Целое число |
Замечание. Поле КодСтудента в таблицу Платежи вставляется из аналогичного поля таблицы Студенты. В таблице Студенты тип этого поля Счетчик, а в таблице Платежи - числовой. Это связано с тем, что в таблице Платежи возможно повторение значения поля КодСтудента, т.к. один и тот же студент может выполнять несколько видов платежей.
Результат формирования структуры таблицы представлен на рис.15 и рис. 16. На рис.15 отображены свойства нетекстовых полей. В маске ввода для поля ДатаПлатежа использован символ 0, требующий обязательного заполнения. При вводе данных может использоваться только цифра.
Элементы подстановки для поля Цель представлены на рис. 16. Создание списка фиксированного набора значений рассматривалось ранее.
Рассмотрим создание таблицы подстановки для поля КодСтудента, поскольку в этом случае необходимо для полной идентификации студента использовать не одно поле таблицы, а несколько. Выбранные поля для подстановки представлены на рис.17.
Для сохранения значения в базе данных следует указать поле КодСтудента (рис.18) и это же поле в качестве подписи (рис.19).
Процедура ввода данных в поле КодСтудента представлена на рис.20.
Изменение данных
Точность хранимой в базе данных информации обеспечивается ее редактированием, а актуальность - регулярным обновлением: добавлением новых записей, вставкой и удалением записей. Очень часто изменение данных удобнее выполнить с помощью копирования. Для автоматизации процесса изменения данных можно использовать специальный механизм поиска и замены.
Практически все операции изменения данных в MS Access предполагают выделения объекта изменения, а затем выбора команды в меню или активизации кнопки на панели инструментов, т.е. выполняются стандартными средствами MS Office.
Редактирование данных до окончания ввода значений осуществляется с использованием клавиш Backspase и Del. Для перехода в режим редактирования после завершения ввода используется функциональная клавиша F2.
Добавление новых записей в таблицу, небольшую по количеству записей, не вызывает затруднений. Однако, если количество записей в таблице значительно, процесс усложняется. Для быстрого перехода к последней записи таблицы можно использовать
- клавиши Ctrl + End и Ноme (см. табл.1);
- кнопки перехода между записями таблицы базы данных (рис.21).
Кнопка перехода к последней записи таблицы расположена внизу окна таблицы, в правой части строки с номером текущей записи.
Таблица 1
Клавиши | Действие |
, ® , , ¯ | Перемещение от одного поля к другому в соответствии с направлением стрелки |
Таb | Перемещение по записи слева направо и вниз по таблице |
Ноme, End | Перемещение в начало и конец текущей записи соответственно |
PageUp, PageDown | Перемещение на одну экранную страницу вверх и вниз соответственно |
Ctrl + End | Перейти к последнему полю последней записи таблицы |
Ctrl + Ноme | Перейти к первому полю первой записи таблицы |
Для вставки, копирования и удаления записи таблицы требуется щелчком левой кнопки мыши по маркеру записи выделить необходимую запись, а затем активизировать соответствующую команду.
При удалении записей с полем типа Счетчик изменение счетчика записей не модифицируется, т.е. количество записей таблицы и значение счетчика после удаления не совпадают. Например, в таблице Студенты (рис.22) всех записей 14, а последнее значение поля КодСтудента типа Счетчик - 19 поскольку записи с 15 по 18 включительно были удалены.
Активизация механизма поиска и замены данных осуществляется с помощью кнопки Найти панели инструментов Таблица в режиме таблицы. В окне Поиск и замена (рис.23) можно выбрать режим поиска (соответствующая вкладка) или режим поиска и замены данных (вкладка Замена). В первом случае осуществляется только поиск записей с информацией, зафиксированной в поле Образец, во втором - и поиск и замена найденного значения на указанный вариант. На рис.23 название факультета Мтф заменяетсязначением МТФ. За одно обращение к механизму можно изменить значение отдельной записи или всех, соответствующих образцу поиска.