Что такое база данных
В простейшем случае база данных (БД) — это систематизированный набор записей и файлов, имеющих специальное предназначение. Например, в компьютере можно хранить адреса и имена всех друзей или клиентов. Можно хранить все написанные вами письма и упорядочить их по получателям. Возможно, у вас имеется набор файлов, в которых вы храните финансовые данные (счета к оплате или счета к получению) и учитываете свои поступления и расходы. В широком смысле, упорядоченные по темам документы, содержащие текстовую информацию, можно отнести к одному из типов баз данных. Файлы электронных таблиц, упорядоченные в соответствии с предназначением, — к другому типу баз данных. Ярлыки ко всем программам в основном меню Windows также являются примером базы данных. Ссылки, хранящиеся в папке Избранное, — это тоже своего рода база данных.
Если вы любите порядок, то, скорее всего, электронные таблицы или ярлыки к ним у вас сгруппированы с помощью каталогов и подкаталогов. При выполнении такого упорядочивания вы сами являетесь диспетчером базы данных. Но что делать, когда приходится работать с огромными объемами? Как можно собирать сведения обо всех клиентах и сделанных ими заказах, если данные хранятся в нескольких документах или файлах? Как обеспечить связь между файлами при вводе новой информации? Как проверить достоверность ввода данных? Как быть, если необходимо обеспечить совместный доступ к информации, но предотвратить одновременное обновление данных двумя различными сотрудниками? Как обеспечить размножение данных, если отсутствует возможность одновременного доступа к данным? Наличие подобного рода проблем говорит о необходимости использовать систему управления базой данных, СУБД (database management system, DBMS).
Реляционные базы данных
Почти все современные СУБД хранят и обрабатывают информацию на основе реляционной модели управления данными. В реляционной СУБД (сокращенно называемой СУРБД) данные хранятся в нескольких таблицах. Каждая таблица содержит сведения об одном предмете (например, клиенте или продуктах) и имеет столбцы (поля), содержащие различные типы сведений о данном предмете (например, адрес и телефон клиента), и строки (записи), в которых описаны все атрибуты отдельного экземпляра предмета (например, сведения о конкретном товаре). При выполнении запроса (извлечении сведений из одной или нескольких таблиц) результат почти всегда выглядит как еще одна таблица.
Понятие «реляционная» происходит из того факта, что каждая таблица содержит сведения, связанные с одним и только одним предметом. При дальнейшем изучении реляционной модели вы поймете, что понятие «связь» (relation) применяется к набору строк (или таблице), относящихся к одному предмету. Кроме того, данные о двух классах информации (например, клиенты и заказы) могут обрабатываться как единое целое, с учетом связей между значениями данных. Например, излишним будет хранение имени и адреса клиента в каждом размещаемом им заказе. В реляционной СУБД информация о заказе имеет поле, в котором хранится номер клиента, что позволяет связать каждый заказ с информацией о соответствующем клиенте.
Помимо этого можно выполнить слияние связанных данных из различных таблиц или запросов. Например, можно выполнить слияние сведений о компании с контактной информацией, чтобы найти контактную информацию конкретной компании. Можно также выполнить слияние сведений о сотрудниках со сведениями об отделах, что позволит найти отдел, в котором работает определенный сотрудник.
Некоторые понятия реляционных баз данных
Отношение (Relation) — сведения об отдельном предмете (клиентах, заказах, сотрудниках, продуктах или компаниях). В реляционной СУБД отношения обычно хранятся в виде таблиц.
Атрибут (Attribute) — определенная часть информации о предмете (например, адрес клиента или сумма заказа). Атрибут обычно хранится в столбце (поле) таблицы.
Экземпляр (Instance) — конкретный элемент отношения (конкретный клиент или продукт). Экземпляр обычно представлен в таблице записью (строкой).
Связь (Relationship) — это способ, посредством которого информация в одном отношении связана с информацией в другом отношении. Например, клиенты имеют связь «один-ко-многим» с заказами, поскольку один клиент может размещать несколько заказов, но каждый заказ относится только к одному клиенту.
Слияние (Join) — процесс объединения таблиц или запросов к таблицам с использованием связей между ними. Например, можно выполнить слияние данных о клиентах с данными о заказах, размещенных клиентами, путем сопоставления идентификационного номера клиента в таблице клиентов и таблице заказов.
Возможности баз данных
Системы управления реляционными базами данных (СУРБД) дают полный контроль над определением и обработкой и совместным использованием данных. Такие системы предоставляют все возможности управления и каталогизации больших объемов информации во множестве таблиц. СУРБД обеспечивает три основные возможности: определение данных, обработка данных и управление данными.
• Определение данных. Можно определить, какие данные будут храниться в базе данных, тип данных (например, текст или число) и связи между ними. В некоторых случаях можно задать способы форматирования и проверки допустимости данных.
• Обработка данных. Допускается любое манипулирование данными. Можно выбирать необходимые поля данных, фильтровать и сортировать данные. Также можно выполнять слияние связанной информации и выводить итоговые данные. Имеется возможность выделить подмножество данных и попросить СУБД обновить, удалить или скопировать его в другую таблицу либо создать новую таблицу с этими данными.
• Управление данными. Можно определять, кому разрешено просматривать, обновлять и добавлять информацию. В большинстве случаев имеется возможность определить порядок совместного использования и обновления данных несколькими пользователями.
Все эти возможности реализованы в приложении Access. Давайте рассмотрим их и сравним с тем, что предоставляют программы обработки текстов и электронных таблиц.
Что такое Access?
Если вы являетесь серьезным пользователем персонального компьютера, то, скорее всего, для решения своих задач вы используете приложения обработки текстов или электронных таблиц. Быть может, много лет назад вы начинали с программ для MS-DOS, работающих только в символьном режиме, но впоследствии перешли на использование программных продуктов, работающих в операционной системе Windows. Кроме того, возможно, у вас имеется собственное приложение для работы с базами данных: либо в составе пакета Microsoft Works, либо в виде отдельной программы.
Программы работы с базами данных существуют на персональных компьютерах уже довольно давно. К сожалению, большинство этих программ являются либо простыми диспетчерами хранилищ данных, не обеспечивающими возможность создания приложений, либо комплексными системами разработки, сложными в работе и использовании. Даже специалисты стараются избегать сложных систем работы с базами данных, за исключением тех случаев, когда они предоставляют полнофункциональное приложение, построенное под конкретную задачу. Однако появление Access обеспечило революционную простоту в использовании. Большинство пользователей в Access привлекает возможность создания, как простых баз данных, так и полномасштабных приложений.
В настоящее время, когда выпущено уже несколько версий и, начиная с пятого выпуска, приложение Access стало надежным 32-разрядным Windows-приложением, возможно, наступило время по-другому подойти к выполнению своей работы на компьютере. Если ранее вы настороженно относились к программным продуктам, предназначенным для работы с базами данных, ввиду недостаточности навыков программирования либо ввиду того, что на обучение уходит слишком много времени, то вы будете приятно удивлены простотой работы в Access. Но как определить, что уже пора переходить на использование таких систем управления базами данных (СУБД), как Access? Для облегчения принятия правильного решения давайте рассмотрим преимущества использования таких СУБД.
Access как СУРБД
База данных Access (использующая файлы с расширением .mdb) является полнофункциональной СУРБД. Она обеспечивает все возможности определения, обработки и управления данными для работы с большими объемами информации.
Такую базу данных можно использовать изолированно на отдельной рабочей станции или в клиент-серверном режиме по сети. «Настольная» база данных также может выступать в качестве источника данных для веб-страниц корпоративной сети. При создании приложения на основе «настольной» базы данных Access выступает в роли СУРБД. Помимо этого Access может использоваться для создания файла проекта (с расширением .adp), подключаемого к серверу SQL Server, что позволит совместно использовать данные сервера другими приложениями или пользователями по Сети. При создании файла проекта в качестве СУРБД выступает SQL Server (или Microsoft SQL Server Desktop Engine, MSDE).
Определение и хранение данных
При работе с документами или электронными таблицами предоставляется полная свобода определения содержания документа или каждой ячейки электронной таблицы. Любая страница текстового документа может содержать текст, таблицу, диаграмму или несколько столбцов данных, выводимых различными шрифтами. В одном столбце электронной таблицы вверху можно указать заголовок, а в каждой строке, в зависимости от выполняемой ей функции, использовать различные числовые форматы. Эта гибкость нужна для того, чтобы документ мог выражать содержание, а также обеспечивал возможность вычисления и удобного представления результатов.
Такая гибкость прекрасна для решения относительно небольших, строго определенных проблем. Но документ становится громоздким, если он содержит несколько десятков страниц, а электронные таблицы не обеспечивают удобство управления, когда объем информации превышает несколько сот строк. По мере роста объема данных можно достичь пределов объемов, допускаемых текстовым процессором, программой работы с электронными таблицами или всего компьютера.