В этой главе вы узнали, что Access 2007 является реляционной СУБД и что база данных состоит из взаимосвязанных таблиц. Вы ознакомились с ключевыми понятиями теории баз данных, процессом проектирования структуры данных и этапами построения собственной базы данных. Кроме того, вы научились настраивать интерфейс Access, чтобы сделать работу с программой еще более удобной и находить ответы на возникающие вопросы в справочной системе Access.
Все эти знания вы будете активно использовать на всех этапах работы с базой данных. Первый этап – открытие или создание базы данных – вы уже освоили. Теперь вы готовы приступить к следующему этапу: созданию таблиц, настройке связей между таблицами, вводу и редактированию данных. Этому этапу посвящена следующая глава.
Порядок работы с таблицами
Создание, переименование и удаление таблицы
Редактирование данных в режиме таблицы
Настройка полей таблицы в режиме конструктора
Настройка связей между таблицами
Просмотр таблицы
Резюме
В предыдущей главе вы узнали, как открыть или создать базу данных Access. Теперь перейдем к следующему этапу – работе с таблицами. Напомним, что именно в таблицах хранится вся информация, содержащаяся в базе данных. В этой главе вы найдете всю информацию по созданию, настройке и редактированию таблиц, установке связей между таблицами и вводу данных в таблицы. Используя материалы этой главы, вы сможете разработать базу данных «с нуля», а также редактировать существующую или созданную на основе шаблона базу данных.
В следующем подразделе содержится информация о двух основных режимах, которые будут использоваться для работы с таблицами.
Для создания и редактирования таблиц предназначены два режима.
• Режим таблицы (рис. 2.1) предназначен для ввода, просмотра и редактирования записей. При вводе данных программа Access автоматически добавляет недостающие поля и определяет тип данных для этих полей.
Рис. 2.1. Режим таблицы
• Режим конструктора таблицы (рис. 2.2) предназначен для настройки свойств полей, таких как тип данных, значение по умолчанию, список возможных значений, маска значений и многих других.
Рис. 2.2. Конструктор таблицы
Переключение режима работы осуществляется с помощью кнопки Режим, которая находится на ленте, на вкладках Главная, Режим таблицы или Конструктор (на всех вкладках эта кнопка крайняя слева). Кнопка меняет свой внешний вид. В режиме таблицы она выглядит так:
а в режиме конструктора так:
Работа с таблицей начинается с ее создания (см. подразд. «Создание таблицы»). Далее вы можете выбрать вариант действий по своему усмотрению:
• сразу ввести данные в режиме таблицы (см. разд. «Редактирование данных в режиме таблицы»). При этом программа Access автоматически добавляет в таблицу необходимое количество полей и определяет типы данных для этих полей. Так, если введены буквы, полю будет присвоен тип данных Текстовый, если цифры – Числовой. Затем при необходимости можно настроить свойства полей в режиме конструктора (см. разд. «Настройка полей таблицы в режиме конструктора»);
• вначале создать в конструкторе поля таблицы и указать их свойства, как это описано в разд. «Настройка полей таблицы в режиме конструктора», а затем ввести информацию (см. разд. «Редактирование данных в режиме таблицы»);
• при необходимости чередовать работу в режиме таблицы и в режиме конструктора. Например, создать часть полей в конструкторе, ввести некоторые данные и снова вернуться в режим конструктора и т. д.
Непосредственный ввод данных с автоматическим определением типов данных обычно используется для простых таблиц, не требующих или почти не требующих специальных манипуляций со свойствами полей. Работа в конструкторе предоставляет возможность более тонкой настройки, но и требует больших затрат времени.
Преимуществом создания полей в конструкторе является возможность задать свойства полей, ускоряющие ввод данных (например, список значений поля, значение по умолчанию) и уменьшающие количество случайных ошибок ввода (маска ввода, условия на значение и др.).
Приступая к работе с таблицами, начнем с изучения операций, выполняемых с таблицей как с единым целым.
Итак, вы открыли или создали базу данных (как это сделать, описано в разд. «Приступим к работе» в предыдущей главе). Теперь программа Access готова к работе с таблицами. Если вы создали пустую базу данных, программа автоматически создала и открыла новую пустую таблицу и вы можете начать заполнять эту таблицу (см. разд. «Редактирование данных в режиме таблицы» и разд. «Настройка полей таблицы в режиме конструктора»). Если вы создали базу данных на основе шаблона или работаете с существующей базой, вы можете создать новую таблицу или открыть ранее созданную.
Создать новую таблицу можно одним из следующих способов.
• Если вы желаете создать пустую таблицу, откройте на ленте вкладку Создание и нажмите кнопку Таблица или Конструктор таблиц. Программа Access создаст новую пустую таблицу и откроет ее, соответственно, в режиме таблицы или в режиме конструктора. Однако вы можете в любой момент переключиться на другой режим (см. разд. «Порядок работы с таблицами»).
• Если вы желаете создать типовую таблицу с помощью встроенного шаблона, откройте на ленте вкладку Создание и нажмите кнопку Шаблоны таблиц. В появившемся меню выберите подходящий шаблон таблицы. Программа Access создаст новую таблицу с заданными в шаблоне полями и откроет ее в режиме таблицы. Таблицу, созданную по шаблону, вы можете редактировать так же, как и обычную таблицу: добавлять и удалять столбцы, создавать новые записи и т. п.
Чтобы сохранить созданную таблицу, нажмите сочетание клавиш Ctrl+S. При первом сохранении таблицы программа предложит ввести ее название.
Чтобы вносить изменения в ранее созданную таблицу, ее нужно сначала открыть. Для этого дважды щелкните кнопкой мыши на ее названии в области переходов. Таблица будет открыта в режиме таблицы.
Если вы хотите изменить название таблицы, сначала закройте ее, если она открыта. Для этого нажмите кнопку
в правом верхнем углу вкладки или окна, где таблица открыта.
В области переходов щелкните правой кнопкой мыши на названии таблицы и в появившемся контекстном меню выберите пункт Переименовать. Введите новое название таблицы и нажмите клавишу Enter. Новое название будет автоматически сохранено, и ссылки на переименованную таблицу будут обновлены.
Если таблица была переименована ошибочно, сразу же после переименования нажмите сочетание клавиш Ctrl+Z для возврата прежнего названия.
Перед удалением, как и перед переименованием, таблица должна быть закрыта. Чтобы закрыть таблицу, нажмите кнопку
в правом верхнем углу вкладки (или окна), в которой открыта таблица.
Если вы хотите удалить ошибочно созданную или ставшую ненужной таблицу, щелкните правой кнопкой мыши на ее названии в области переходов, а затем в появившемся контекстном меню выберите пункт Удалить. На экране появится панель, в которой нужно подтвердить удаление таблицы, нажав кнопку Да.
Если таблица была удалена ошибочно, сразу же после удаления нажмите сочетание клавиш Ctrl+Z.
Внимание!
Удаление таблицы – очень ответственная операция, поскольку все данные в ней, а также связи с другими таблицами, запросами и т. п. будут безвозвратно утеряны. Рекомендуем перед удалением таблицы создать резервную копию базы данных.
Теперь, когда были рассмотрены операции, выполняемые с таблицей в целом, перейдем к работе с отдельными записями и полями таблицы.
Итак, вы открыли или создали таблицу в режиме таблицы. Теперь вы можете редактировать данные: добавлять и удалять записи и поля, изменять названия и значения полей.
Для начала будет рассказано, как быстро ввести данные в пустую таблицу с автоматическим созданием полей. Далее будут описаны действия с отдельными записями и полями. Эти операции можно выполнять по мере необходимости на любом этапе работы с таблицей.
Сразу же после создания пустой таблицы (с помощью кнопки Таблица на вкладке Создание) в ней уже существует поле Код с типом данных Счетчик. Это первичный ключ, и в нем будет указан уникальный идентификатор записи. Это поле будет заполняться программой. Удалить ключевое поле можно только в режиме конструктора.
Чтобы заполнить таблицу, выполните следующие действия.
1. Курсор уже находится в первой ячейке таблицы под надписью Добавить поле (если нет – щелкните кнопкой мыши в этой ячейке). Введите значение соответствующего поля первой записи таблицы.
Например, вы собираетесь создать таблицу Товары с полями Код, Наименование, Описание и Цена. Поскольку поле Код заполняется автоматически, введите наименование первого товара.
2. После ввода значения нажмите клавишу Enter. Access автоматически выполнит ряд действий (рис. 2.3):
1) создаст поле, в которое введено значение, и присвоит этому полю название по умолчанию Поле1;
2) автоматически выберет тип данных поля (если введены буквы – это будет тип Текстовый, если цифры – тип Числовой, если число, месяц и год – тип Дата/время);
3) переместит курсор в следующее поле записи.
Рис. 2.3. Автоматическое создание поля в режиме таблицы
3. Введите значение следующего поля и нажмите клавишу Enter. Введите таким образом значения всех полей первой записи.
4. После ввода значения последнего поля в первой записи нажмите клавишу Enter несколько раз, пока курсор не перейдет на следующую запись в поле Поле1.
Примечание
Если в первой записи есть пустое поле, добавить его автоматически не получится, поскольку после двух нажатий клавиши Enter курсор перейдет на следующую запись. Однако нужное поле вы можете в любой момент добавить вручную. Для этого см. подразд. «Добавление столбца».
5. При необходимости внесите изменения в названия полей и типы данных (см. подразд. «Переименование столбца» и подразд. «Изменение свойств столбца»).
6. Если таблица еще не была сохранена, нажмите сочетание клавиш Ctrl+S. При первом сохранении таблицы программа Access предложит ввести название таблицы. После первого сохранения все изменения, выполняемые в режиме таблицы (добавление, удаление, переименование полей; добавление, удаление, редактирование записей), будут сохраняться автоматически.
Внесение изменений в таблицу описывается в следующих подразделах.
Если вы хотите добавить в таблицу новую запись, просто установите курсор в любое поле последней (пустой) строки таблицы и введите значение.
Программа автоматически создаст новую запись. Если первичным ключом служит поле с типом Счетчик, то записи будет автоматически присвоен идентификатор.
Если нужно задать значения других полей создаваемой записи, нажмите клавишу Enter для перехода в следующее поле.
Справа от редактируемой записи отображается значок
После перехода к другой записи значок исчезает. Это означает, что запись добавлена в базу данных.
При вводе значений в поля записи имеется ряд ограничений.
• Если вводимое значение не соответствует типу данных поля (см. подразд. «Типы данных»), Access предложит вам изменить значение либо преобразовать тип данных для этого поля.
• Если в таблице есть обязательные поля, то программа Access предложит вам ввести значения в эти поля.
• Если в качестве первичного ключа выбрано поле, которое заполняется не автоматически, а пользователем (то есть имеет тип данных, отличный от типа Счетчик) и в это поле введено пустое или повторяющееся значение, Access предложит вам ввести корректное (непустое и уникальное) значение.
• Если в базе данных уже настроены связи между таблицами и при этом вы создаете запись в дочерней таблице и включен режим обеспечения целостности данных (см. разд. «Настройка связей между таблицами»), то Access проверит корректность ссылки. Если создаваемая запись ссылается на несуществующую родительскую запись (то есть во вторичном ключе создаваемой записи введено значение, отсутствующее в первичном ключе родительской таблицы), то Access уведомит о невозможности сохранения такой записи.
В следующем подразделе вы узнаете, как внести изменения в уже созданную запись.
Чтобы изменить значение любого поля записи, щелкните кнопкой мыши в этом поле и отредактируйте значение. При этом действуют те же ограничения, что и при добавлении новой записи: нельзя ввести значение, не соответствующее типу данных поля, нельзя сделать пустым обязательное поле, нельзя ссылаться на несуществующую родительскую запись, нельзя ввести пустое или повторяющееся значение в первичный ключ.
Кроме того, если в базе данных уже настроены связи между таблицами, то существуют ограничения на редактирование значения первичного ключа родительской записи, то есть записи, на которую ссылаются записи дочерних таблиц. Отличительным признаком родительской таблицы является знак + слева от каждой записи, после щелчка кнопкой мыши на котором вы увидите дочерние записи. Если вы меняете значение первичного ключа для записи, у которой есть дочерние записи, то возможны следующие ситуации.
• Если не включен режим обеспечения целостности данных (см. разд. «Настройка связей между таблицами»), то в первичный ключ родительской таблицы можно ввести любое непустое уникальное значение (точно так же, как для несвязанной записи). Однако при этом целостность данных нарушается, и записи, которые были дочерними для редактируемой записи, теперь ссылаются на несуществующую запись.
• Если включен режим обеспечения целостности данных, но отключено каскадное обновление связанных полей, изменить значение первичного ключа невозможно.
• Если включен и режим обеспечения целостности данных, и каскадное обновление связанных полей, то новое значение первичного ключа в родительской записи будет автоматически установлено во вторичном ключе всех дочерних записей. Ссылки на данную запись автоматически обновятся, и их корректность будет сохранена.
Если значение поля было изменено ошибочно, для возврата прежнего значения сразу же нажмите сочетание клавиш Ctrl+Z.
Справа от редактируемой записи виден значок
После перехода к другой записи он исчезает. Это означает, что измененная запись добавлена в базу данных.
Внимание!
Если таблица уже была сохранена, то измененные значения полей сохраняются автоматически при переходе к другому полю. Отменить можно только последнее изменение, в дальнейшем вернуть прежние значения будет невозможно.
В следующем подразделе будет рассказано, как удалить запись, которая стала ненужной или неактуальной.
Если вам необходимо удалить запись, нажмите кнопку слева от записи, чтобы выделить запись целиком; затем нажмите клавишу Delete. В появившейся панели подтвердите удаление записи, нажав кнопку Да.
Если в базе данных уже настроены связи между таблицами, а удаляемая запись является родительской и на нее ссылаются записи дочерних таблиц, то слева от записи отображается знак +, после щелчка кнопкой мыши на котором вы увидите дочерние записи. В этом случае возможны следующие ситуации.
• Если не включен режим обеспечения целостности данных, то родительская запись удаляется точно так же, как несвязанная запись (не имеющая дочерних). Однако при таком удалении целостность данных нарушается, и записи, которые были дочерними для редактируемой записи, теперь ссылаются на несуществующую запись.
• Если включен режим обеспечения целостности данных, но отключено каскадное удаление связанных записей, удаление родительской записи невозможно.
• Если включен и режим обеспечения целостности данных, и каскадное удаление связанных записей, то вместе с записью будут автоматически удалены все дочерние записи в дочерней таблице.
Внимание!
Удаление записи приводит к удалению всех данных, которые хранились в полях записи. Восстановить эти данные будет невозможно.
На этом рассмотрение операций, выполняемых с записями, заканчивается. Перейдем к изучению операций со столбцами.
Если вы хотите добавить в таблицу новый столбец, щелкните правой кнопкой мыши на названии того столбца, перед которым должен следовать новый столбец. Затем в появившемся меню выберите пункт Вставить столбец.
Если добавляемый столбец должен быть последним, вы можете сразу вводить значение в любую ячейку в столбце под надписью Добавить поле. В этом случае столбец будет добавлен автоматически.
После добавления столбца его можно переименовать, переместить, а также изменить тип его данных.