КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Правило 2. Разбивайте ваши данныеСледите за тем, чтобы не включить слишком большую порцию данных в одно поле. Вы должны хранить в каждом поле элементарную порцию данных. Рис. 2.21. Данный пример демонстрирует правильный способ разделения данных (вверху) в таблице Contacts (контакты) и неверный способ (внизу). Учтите, что технически все еще возможно разделить данные позже — теоретически сведения об уличном адресе можно разделить на StreetNumber (номер дома), StreetName (название улицы) и StreetType (тип улицы). Но такой подход создает массу сложностей, не давая ничего взамен, поэтому гуру БД редко соглашаются на дополнительные неприятности Вместо того чтобы создать одно поле Nameв таблице о контактах, гораздо разумнее вставить два поля: FirstName(имя) и LastName(фамилия). Существует множество оснований для разделения информации на отдельные поля. Прежде всего, это устраняет некоторые типы ошибок. В поле Nameимя можно ввести несколькими разными способами (например, "Фамилия, Имя" или "Имя Фамилия"). Разбиение имени устраняет эти проблемы, способные создать затруднения при попытке использовать данные в автоматизированной задаче какого-либо вида (например, объединение сообщений электронной почты). Но гораздо важнее то, что значительно легче работать с данными, которые разделены на маленькие порции. После разделения поля Nameна поля FirstNameи LastNameвы можете сортировать и искать информацию, основываясь на одной порции этой информации, чего нельзя было бы сделать в противном случае. Аналогично следует разделить сведения об адресе на несколько столбцов, таких как Street(улица), City(город), State(штат) и Country(страна) — в этом случае вы гораздо легче найдете всех, кто живет в Нантуките (Nantucket). На рис. 2.21 показан пример надлежащего разбиения. На рис. 2.21 (внизу) отображена опасная ошибка — попытка хранить несколько порций данных в одном поле.
|