Александр Днепров
Microsoft Access 2007
В этой книге описана работа с приложением Access 2007, входящим в пакет офисных программ Microsoft Office 2007 и представляющим собой систему управления базами данных (СУБД). Access позволяет легко обрабатывать большие объемы информации и извлекать из базы данных нужные сведения. Инструменты программы предоставляют пользователям огромные возможности и в то же время отличаются простотой и надежностью. Для создания собственной базы данных достаточно освоить лишь несколько простых операций.
Эта книга поможет вам в построении вашей базы данных «с нуля»: вы научитесь формировать структуру базы, правильно распределять информацию в базе, находить нужные данные среди большого объема сведений и создавать наглядные отчеты. В издании приведены пошаговые инструкции для всех операций, которые вам предстоит выполнить.
Все основные понятия и принципы работы с базой данных будут проиллюстрированы примерами. Чтобы было проще, мы будем использовать одну простую базу данных, содержащую сведения о продукции некоей компании, ее клиентах и их заказах.
Прочитав книгу, вы достигнете профессионального уровня в работе с базами данных Access 2007 – важнейшим и популярнейшим средством хранения информации для коммерческих проектов любого типа.
От главы коллектива авторов
Высказать замечания и пожелания, задать вопросы по этой книге вы можете по адресу [email protected] или на нашей домашней страничке www.sigmaplus.mcdir.ru (там вы найдете также дополнительные материалы по книге, сможете принять участие в форуме или пообщаться в чате).
Александр Жадаев
От издательства
Ваши замечания, предложения и вопросы отправляйте по адресу электронной почты [email protected] (издательство «Питер», компьютерная редакция).
Мы будем рады узнать ваше мнение!
На сайте издательства http://www.piter.com вы найдете подробную информацию о наших книгах.
Как устроена база данных Microsoft Access
Проектирование структуры данных
Этапы работы с базой данных
Приступим к работе
Пользовательский интерфейс Access 2007
Настройка элементов интерфейса
Справочная система Access 2007
Резюме
Программа Microsoft Access 2007 представляет собой систему управления базами данных (СУБД). Используя Access, вы сможете легко обрабатывать большие объемы информации и извлекать из базы данных нужные вам сведения. Acсess обладает огромными возможностями, и в то же время для начала работы и создания собственной базы данных достаточно освоить лишь несколько простых операций.
Эта книга поможет вам в построении вашей базы данных «с нуля»: вы научитесь создавать структуру базы, наполнять ее информацией, находить нужные данные среди большого объема сведений и создавать наглядные отчеты. В книге приведены подробные инструкции для всех операций, которые вам предстоит выполнить.
Все основные понятия и принципы работы с базой данных будут проиллюстрированы примерами. В качестве примера мы будем использовать простую базу данных, содержащую сведения о продукции некоей компании, о ее клиентах и о заказах, сделанных клиентами.
Прочитав данную главу, вы сможете спроектировать структуру данных, отвечающую именно вашим требованиям, сделать первые шаги в создании своей базы, а также узнать о дальнейших этапах работы. Но вначале ознакомьтесь с несколькими несложными понятиями, лежащими в основе баз данных.
Как устроена база данных Microsoft Access
Программа Access представляет собой реляционную СУБД (от англ. relation – отношение). Это означает, что база данных Access состоит из взаимосвязанных таблиц. Рассмотрим таблицы и их составляющие, а затем перейдем к изучению связей.
Таблицы
Таблица базы данных – это обычная таблица из строк и столбцов. Ниже приведен пример таблицы (табл. 1.1), содержащей сведения о клиентах компании.
Таблица 1.1.
Клиенты
Записи и поля
Строки таблицы называются записями. Каждая запись описывает один объект, и, как видно из примера, запись содержит несколько ячеек таблицы, хранящих определенные сведения об объектах. В примере каждая запись содержит информацию об одном клиенте, скажем, запись № 536 – о клиенте по фамилии Крылов, запись № 534 – по фамилии Петров и т. д.
Ячейки таблицы, составляющие запись, по терминологии баз данных называются полями . В ячейках хранятся атрибуты объекта. Например, если объект (то есть клиент) имеет рейтинг 1000, то и в соответствующей записи поле Рейтинг содержит значение 1000 .
Полем также называют весь столбец таблицы. Когда говорят о поле записи, речь идет о ячейке. Например, поле Имя записи 536 содержит значение Крылов . Когда же говорят о поле таблицы, то речь идет о столбце. Например, поле Номер (ID) таблицы Клиенты не должно содержать повторяющихся значений.
Каждое поле таблицы имеет строго определенный тип данных. Так, поля Номер (ID) и Рейтинг – числовые, а поля Имя , Телефон и Адрес – текстовые.
Связи между таблицами
Связь между двумя таблицами организуется посредством общих полей этих таблиц. Приведем пример таблицы (табл. 1.2), связанной с таблицей Клиенты.
Таблица 1.2.
Заказы компании
В этом примере общими полями являются поле Номер (ID) таблицы Клиенты и поле Клиент таблицы Заказы . А именно, поле Клиент содержит номер клиента из таблицы Клиенты . Таким образом, каждая запись таблицы Заказы ссылается на какую-либо запись таблицы Клиенты .
На этом принципе организации связи между таблицами и построены реляционные базы данных. Простой на первый взгляд способ связи предоставляет массу полезных возможностей. В частности, он позволяет извлекать информацию одновременно из нескольких таблиц (например, можно составить отчет, представляющий собой список клиентов с указанием общей суммы заказов каждого клиента), а также избежать дублирования сведений. Так, в данном примере не нужно в каждом заказе указывать адрес клиента.
Кроме того, полезно знать, что если одна таблица ссылается на другую, то первая таблица называется дочерней (как таблица Заказы ), а вторая – родительской (как таблица Клиенты ). Если одна запись ссылается на другую, они также называются дочерней и родительской.
Ключевые поля
В реляционной базе данных существует два вида ключевых полей: первичный ключ и вторичный ключ. Для идентификации записей в таблице используется первичный ключ – поле или набор полей таблицы, чьи значения однозначно определяют запись. Соответственно значения первичного ключа должны быть уникальны, то есть в таблице не должно быть двух строк с одинаковыми значениями первичного ключа.
Практически всегда в качестве первичного ключа используется специальное поле, содержащее номер записи (например, поле Номер (ID) в таблице Клиенты ). Программа Access присваивает записям номера автоматически и гарантирует уникальность номеров.
Вторичным ключом называется поле дочерней таблицы, содержащее значения первичного ключа родительской таблицы. Например, поле Клиент в таблице Заказы является вторичным ключом. Таким образом, связи между таблицами организуются с помощью ключевых полей.
Теперь, когда вы познакомились с основными элементами таблиц, можно приступать к разработке структуры собственной базы данных.
Проектирование структуры данных
Как и построение здания, построение базы данных начинается с проектирования. Чтобы понять, какая структура базы будет для вас наиболее удобной и полезной, следуйте нижеприведенным этапам проектирования.
1. Для начала необходимо выяснить, каково назначение базы данных и какую информацию необходимо получать из базы. Составьте список типичных запросов к базе данных:
• список ваших клиентов с контактными данными;
• список заказов конкретного клиента;
• список всех заказов за определенный период;
• какие товары в каком количестве были заказаны за определенный период и т. д.
2. Выделите из этого набора классы объектов, о которых нужно будет получать информацию из базы данных. Объекты каждого класса будут храниться в отдельной таблице, и вы тем самым получите список таблиц будущей базы данных. В примере из предыдущего пункта целесообразно выделить следующие классы: клиенты, заказы и товары. Таким образом, в базе данных будет три таблицы.
3. Выпишите интересующие вас атрибуты объектов каждого класса. Например, для каждого клиента необходимо хранить в базе его имя (или название организации) и контактную информацию, для товара – наименование и цену. В результате вы получите список полей каждой таблицы (рис. 1.1). Учтите, что в таблице должен быть первичный ключ, и добавьте в каждую таблицу дополнительное поле – уникальный номер записи.