Работа с базами данных Microsoft Access 2000
3 Учебно-практическое пособие "Работа с базами данных 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 |
Таблица Покупатели | | Таблица Покупатели (структура) | | ИДКл ПокупательФамилия Адрес Город 1 АтлантБалаганов ул. Садовая, 45, кв. 8 Черноморск 2 Рога и копыта Бендер пр. Героев, 31, кв. 5 Москва 3 Метеор Щукина Речной пер., 3, кв. 17 Москва | | ИДКл ПокупательФамилия
Адрес
Город
| | |
Таблица 3 |
Таблица Товары | | Таблица Товары (структура) | | Код товара Товар Поставщик Ед. изм. Цена В на-личии 1 Бананы АО Экзотика кг. 300 200 2 Конфеты ЗАО Рот Фронт кг. 15 300 3 Яблоки АО Умелец кг. 45 500 | | КодТовара
Товар
Поставщик
ЕдИзм.
Цена
В_наличии
| | |
Таблица 4 |
Таблица Заказы | | Таблица Заказы (структура) | | Код Заказа ИДКл Дата КодТовара НДС Кол-во 1 1 02.11.06 1 25% 25 2 2 02.11.06 1 25% 30 3 1 01.11.06 2 25% 20 | | КодЗаказа
ИДКл
Дата
НДС
КодТовара
Кол-во
| | |
Страницы: 1, 2
|