Смекни!
smekni.com

Работа с базами данных Microsoft Access 2000 (стр. 1 из 4)

Учебно-практическое пособие

"Работа с базами данных Microsoft Access 2000"


Введение

Любое предприятие, фирма, банк, учреждение обрабатывает большой объем информации, связанной как с внешними партнерами, так и с внутренними операциями, начиная от начисления заработной платы сотрудникам и заканчивая учетом операций с материальными и денежными средствами внутри и вне фирмы. Эти данные могут представлять собой бизнес-информацию (имя клиента, суммы платежей в платежных ведомостях, данные о сотрудниках и т.д.), предоставляться другой системой (информация о курсах валют, акций), носить временный характер (результаты промежуточных преобразований информации, имена временных файлов и т.д.). Независимо от типа используемой информации и способа работы с ней, данные должны быть логически организованы. Может понадобиться ввод новых данных, редактирование имеющихся, их просмотр и представление в виде отчета.

Табличный процессор Microsoft Excel позволяет хранить данные в одной или нескольких таблицах, проводить однотипные расчеты с большими наборами данных, формировать сводные таблицы и т.д. Однако в электронных таблицах данные не всегда структурированы, в связи с этим в записях таблицы имеется много повторений. Все это затрудняет корректировку и обработку данных. Более гибкие средства обработки данных представляет приложение Microsoft Access 2000.

Система управления базами данных (СУБД) Microsoft Access 2000 поддерживает самую распространенную модель хранения данных – реляционную. Ссылка из одной таблицы на другую через какое-нибудь общее (ключевое) поле называется отношением (relation), а база данных, построенная на таком принципе, – реляционной.

1. Структура реляционной базы данных

Реляционная модель баз данных представляет данные как коллекцию таблиц. Структура базы данных определяется введением связей между простыми таблицами.

Пусть фирма ведет учет продаж, данные о которых хранятся в следующей таблице:

Таблица 1


Объемы продаж фирмы «Гигант»
Покупатель Товар Ед.измер. Кол-во Цена за ед., руб. Сумма, руб. НДС% Сумма с НДС Дата сделки
Атлант Бананы кг 25 12 25 02.11.05
Рога и копыта Бананы кг 30 12 25 02.11.05
Атлант Консервы банка 20 15,5 25 01.11.05
Метеор Консервы банка 50 8,3 25 02.11.05
Атлант Консервы банка 20 7,5 25 05.11.05
Рога и копыта Консервы банка 60 8,7 25 05.11.05
Метеор Конфеты шт. 30 45 25 01.11.05
Рога и копыта Конфеты кг 25 10,5 25 01.11.05
Метеор Конфеты кг 40 12,5 25 05.11.05
Рога и копыта Яблоки кг 50 10 25 01.11.05
Метеор Яблоки кг 50 8 25 04.11.05
Атлант Яблоки кг 10 11,5 25 07.11.05
Атлант Конфеты кг 25 40 25 08.11.05
Рога и копыта Бананы кг 30 12 25 08.11.05
Атлант Конфеты кг 20 30 25 07.11.05
Метеор Консервы банка 20 8,3 25 09.11.05
Атлант Консервы банка 40 12 25 08.11.05
Рога и копыта Консервы банка 30 8,7 25 05.11.05
Метеор Конфеты шт. 10 45 25 08.11.05
Рога и копыта Консервы банка 25 5 25 08.11.05
Метеор Бананы кг 40 12,5 25 07.11.05
Рога и копыта Конфеты кг 50 25 25 09.11.05
Метеор Яблоки кг 50 8 25 08.11.05
Атлант Яблоки кг 100 11,5 25 05.11.05

Таблица содержит избыточную информацию: имя покупателя, наименование товара, единицы измерения повторяются в разных ее строках. Разработчик базы данных должен структурировать данные таким образом, чтобы устранить излишнее дублирование и обеспечить скорейший поиск всех нужных данных. Проводимое с этой целью разделение данных на отдельные таблицы называется нормализацией. Простейшие базы данных можно нормализовать, следуя простому правилу: таблицы, содержащие повторяющиеся данные, нужно разделить на отдельные таблицы, чтобы исключить повторения.

Между таблицами могут быть установлены отношения один ко многим, когда каждой записи одной таблицы соответствует несколько записей другой таблицы, и многие ко многим, когда одной записи первой таблицы соответствует много записей второй и наоборот. Отношение многие ко многим реализуется через два и более отношений один ко многим.

Для повышения эффективности нормализуем таблицу Объемы продаж фирмы «Гигант» (табл. 1), разделив ее на отдельные таблицы: Покупатели (табл. 2), Товары (табл. 3), Заказы (табл. 4) со соответствующей структурой.


Таблица 2

Таблица Покупатели Таблица Покупатели (структура)
ИДКл

Покупатель

Фамилия
Адрес
Город

Таблица 3

Таблица Товары Таблица Товары (структура)
КодТовара
Товар
Поставщик
ЕдИзм.
Цена
В_наличии

Таблица 4

Таблица Заказы Таблица Заказы (структура)
КодЗаказа
ИДКл
Дата
НДС
КодТовара
Кол-во

По сравнению с таблицей 1 в таблицы Покупатели (табл. 2) и Товары (табл. 3) добавлены поля (соответственно Фамилия, Адрес, Город и Поставщик, В наличии), которые позволяют поместить в них дополнительные сведения, необходимые для работы с клиентами и поставщиками товаров. Поля Сумма и СуммаНДС в таблицу Заказы не включены с целью экономии памяти компьютера. Значения этих атрибутов будем вычислять при обращении к БД с помощью запросов.

Каждая запись имеет ключ. Ключ – это поле или группа полей в таблице, которые индексируются для быстрого извлечения данных. Ключ может быть однозначным (unique) или неоднозначным в зависимости от того, разрешается ли в нем наличие повторений. Однозначный ключ может быть назначен первичным ключом (primary key), являющимся неповторяемым идентификатором для каждой строки таблицы. Если ключевое поле не установлено, то Microsoft Access автоматически устанавливает в качестве ключевого поле Счетчик. В приведенных таблицах идентификационные номера записей (выделены жирным шрифтом) являются первичными ключами таблиц, потому что однозначно определяют одну и только одну запись.

В таблице 5 внешние ключи выделены жирным курсивом.

Таблица 5

Покупатели Заказы Товары
ИДКл КодЗаказа КодТовара
Покупатель ИДКл Товар
Фамилия Дата Поставщик
Адрес НДС Ед.изм.
Город КодТовара Цена
Кол-во В наличии

Тип отношений, приведенный в таблице Заказы, называется отношением один ко многим, так как одни клиент может сделать несколько заказов, но конкретный заказ может быть размещен только одним заказчиком, и один товар может быть заказан несколькими клиентами.

Между таблицами Покупатели и Товары установлено отношение многие ко многим. Один клиент может заказать несколько товаров, а один товар может быть заказан несколькими клиентами. Отношение «многие ко многим» реализовано путем создания двух отношений «один ко многим», с общей таблицей «многие» (таблица Заказы), которая содержит внешние ключи других таблиц: таблица Заказы связана как с таблицей Товары (через поле КодТовара), так и с таблицей Покупатели (через поле ИДКл).

Так как таблицы нормализованы, можно изменять данные о заказах, исправив всего одну запись в таблицах Покупатели или Товары. Кроме того, используя нормализованные таблицы, можно составить новые, виртуальные таблицы, содержащие требуемую информацию, сделать удобным ввод данных в БД.

2. Создание базы данных

Для проектирования собственной базы данных загрузите приложение Microsoft Access, для этого нажмите кнопку

на панели Microsoft Office.

После загрузки приложения появится диалоговое окно, в котором пометьте переключатель Новая база данных и нажмите кнопку ОК.

После этого появится диалоговое окно с предложением ввести имя базы данных. Введите имя базы данных и нажмите кнопку Создать. На экране появится окно База данных с именем базы (рис. 1).