Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Объекты




Данные и взаимосвязи.

Мы начинаем рассмотрение структуры базы данных с построения простой модели взаимосвязи объектов. В самых общих чертах такое моделирование (иногда называемое объектным моделированием) подразумевает определение:

· Объектов, информация о которых будет содержаться в базе данных

· Свойств этих объектов

· Взаимосвязей между ними

 

Сначала рассмотрим объекты, на основе которых будет построена наша база данных. Без учета финансовой информации список объектов будет выглядеть так:

· Клиенты, с которыми мы имеем дело

· Документы, в которых числятся данные о клиентах и их товарах

· Склады, в которых располагаются товары

 

Каждый пункт в этом списке описывает объект, существующий независимо от других объектов в мире нашей базы. Каждый такой объект представляется отдельной таблицей. (Ряд других объектов также представлен в этой базе данных отдельными таблицами, но пока не будем забегать вперед).

Каждый из этих объектов обладает собственными свойствами, которые также записаны в базе данных. Среди них:

· Название (имя) клиента

· Реквизиты клиента

· Реквизиты банка

· Тип документа

· Город, в котором расположен клиент

· Название материальной ценности (товара)

· Цена товара

· Группа, в которую входит материальная ценность.

 

 

Каждый пункт этого списка описывает отдельное свойство или атрибут рассматриваемого объекта («клиент», «документ», «город» или «склад») и является потенциальным столбцом в базе данных. Названия столбцов должны быть предельно ясными (назначение столбца должно быть понятно из названия) и кратким (чтобы упростить ввод названий и уменьшить их ширину).

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

 

В результате вы можете получить, например, следующий макет базы:

Таблица Документ

Код дата номер Idn_клиента Idn_склада

 

 

Таблица Клиент

Idn Idn_города название(имя) реквизиты Idn_банка

 


Таблица Склад

Idn Idn_мат.отв реквизиты название

 


Таблица Перемещение

Idn порядков№ код_док дата_док номер_док Idn_группы Idn_мат.цен кол-во цена

 


Таблица Остатки

Idn Idn_группы Idn_мат.ценкол-во цена Idn_склада Idn_перемещения

 

 

Таблица Города Таблица Группы Таблица Банки

Idn название Idn название Idn реквизиты

           
   
     
 
 
 

 


Таблица Мат. ценности Таблица Типы_документо

Idn_группы Idn_мат.цен название код название вид

       
 
   
 

 

 


Чтобы избежать повторения столбцов, мы используем ядро базы (главную таблицу) и справочник (вспомогательную таблицу, которая поддерживает информацию по отдельным позициям). (Подробнее см. нормализация данных).

В вышеприведенной базе данных ядром являются таблицы Документ, Перемещение и Остатки. К справочным таблицам относят все остальные (выделенные жирным шрифтом с подчеркиванием).

Одна из задач проектирования базы данных состоит в обеспечении способа идентификации различных объектов. Другими словами, система должна уметь отличать друг от друга отдельные строки и таблицы. Строки можно различать по значению первичного ключа таблицы. Неформально, первичный ключ- это столбец, однозначно определяющий строку.

 

4.2 Первичные ключи. Что выбрать в качестве первичных ключей для каждой из таблиц?

 

Рассмотрим таблицу Клиент. Среди ее столбцов очевидным кандидатом на первичный ключ является Название. Однако эта комбинация будет удовлетворять нас, пока таблица не разрастется до такой степени, что в ней появятся фирмы с одинаковыми названиями. Например, как только в таблице появятся два филиала (с одинаковыми названиями) одной и той же фирмы, поле Название перестанет однозначно идентифицировать каждый филиал.

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

Чтобы показать, какие столбцы являются первичными ключами, мы подчеркиваем их следующим способом.

- естественный первичный ключ (однозначно идентифицирует строку)

- суррогатный ключ (создан исключительно для удобства)

 

Первичные ключи могут быть простыми и составными. Примерами простых первичных ключей могут служить Idn (таблицы Города, Группы, Склад и т.д.), составных – Idn_группы и Idn_мат.цен (таблица Мат.ценности).

 

Примечание: выбор первичных ключей является одним из основных шагов при проектировании базы данных. Несмотря на их важность, ранние версии SQL не поддерживали определение первичных ключей. ANSI-стандарт SQL 1992 года, принятый сегодня большинством производителей, поддерживает предложение PRIMARY KEY в инструкции CREATE TABLE.

 




Поделиться с друзьями:


Дата добавления: 2014-12-07; Просмотров: 354; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.017 сек.