9
Распределение информации по отдельным таблицам требует определен-
ных знаний и опыта.
Сформулируем основные рекомендации формирования исходных
таблиц БД.
1. Каждая таблица должна характеризовать определенную функцио-
нальную нагрузку. Например, таблица Поступление_товара характеризует все,
что касается поступления товаров. Ключевым полем является
Код_поступления, Следующие поля будут характеризовать это поступление:
Дата_поступления, Товар (код_тов), Количество, Сотрудник (код_сотр), при-
нявший товар и т.д.
Таблица Товары характеризует все, что касается каждого товара:
Код_товара (ключевое поле), Стоимость (единицы), Размер, Вес, Производи-
тель, Группа, гарантийный срок, особенности применения и т.д.
2. Для каждого существенного типа сведений следует создать от-
дельное поле. Например, в таблице Заказчики это могут быть поля: название
компании, адрес, город, страна, номер телефона. В каждом поле данные
должны быть только одного типа.
3. Информацию целесообразно разбивать на минимальные логиче-
ские компоненты. Например, «Имя» и «Фамилия» сотрудников удобно раз-
бить на два поля, что облегчит сортировку по фамилиям (именам).
4. В значениях ключевого поля целесообразно использовать, какие-
то смысловые (текстовые или знаковые) обозначения. Например, «Сотр_1»,
«Сотр_2», и т.д. - в ключевом поле таблицы «Сотрудники»; или «Пост_1»,
«Пост _2», и т.д. - в ключевом поле таблицы «Поступление_товаров».
Использование счетчиков в качестве ключевых полей, конечно, допус-
тимо, но не позволяет сделать наглядным функциональную принадлежность
(к конкретной таблице) данного ключевого поля. Особенно это негативно
проявляется в тех случаях, когда в одной таблице присутствуют несколько
внешних ключевых полей (из разных таблиц). Это в дальнейшем может при-
вести, не только к существенным неудобствам, но и к ошибкам.
5. В исходных таблицах БД не следует приводить вычисляемые дан-
ные, которые являются результатом вычислений или выражений (сочетание
математических и логических операторов). Например, если в таблицах имеют-
ся поля, содержащие «Цену» и «Количество» каких то товаров, то не следует
создавать поле, содержащее произведение значений этих полей. Различные
вычисления следует реализовывать только в запросах.
6. Такие характеристики, как: возраст, опыт работы, время работы на
рынке, стаж, время проведения эксперимента и т.п. следует в исходных таб-
лицах указывать не в числовом формате, а в формате дата/время (например,
23.05.2010 или 14.06.2010 14:53.), чтобы исключить необходимость ежеднев-
ного (ежеминутного) ручного обновления этих данных.
7. Структура (состав полей) исходных таблиц должна формироваться
таким образом, чтобы заполнение каждой строки осуществлялось последова-