Отношение типа "родитель – потомок"

Нет-нет, это не окольный путь в психологию положительных эмоций доктора Фила (Dr. Phil). Фанаты БД применяют обозначения "родитель" и "потомок" для идентификации двух таблиц в отношении и определения каждой из них.

Вот чем объясняется такая аналогия. Как вы, вне всякого сомнения, знаете, в реальной жизни у родителя может быть любое количество детей. А у ребенка только один "комплект"

 

родителей. Это же правило действует и в БД. В БД о куклах-болванчиках единственная запись изготовителя может быть связана с любым количеством записей о куклах. Но каждая запись о кукле ссылается на единственного изготовителя. Итак, в соответствии со странными социальными законами в мире БД Manufacturers — родительская таблица или таблица-родитель, a Dolls — дочерняя таблица или таблица-потомок. Обе таблицы связаны отношением "родитель—потомок".

 

 

Подсказка

Не относитесь слишком серьезно к аналогии "родитель — потомок". Она неидеально соответствует биологической реальности. Например, в БД о куклах-болванчиках можно создать изготовителя, не связанного ни с какой куклой {другими словами, родитель без детей). Вы все равно назовете такую запись родительской, поскольку она — часть таблицы-родителя.

 

 

Важно понять, что нельзя поменять местами таблицу-родитель и таблицу-потомок без изменения отношения между ними. Неправильно считать таблицу Dolls родительской, а таблицу Manufacturers — дочерней. Вы можете заметить, что такое допущение разрушает аналогию "родитель — потомок": у любой куклы не может быть более одного изготовителя и производитель не ограничивается созданием одной куклы. Во избежание проблем и всякого рода туманных измышлений необходимо четко представлять, какая таблица — родитель, а какая — потомок.

 

 

Подсказка

Если возникают трудности при определении родительской таблицы, существует простое правило, направляющее в нужное русло. В дочерней таблице всегда содержится порция идентифицирующей информации из родительской таблицы. В БД о куклах-болванчиках таблица Dolls содержит поле ManufacturerlD. С другой стороны, в таблице Manufacturer нет никаких данных о куклах.

 

 

Если у вас есть друзья, хорошо разбирающиеся в БД, термин "отношение родитель-потомок" вы слышите нечасто. Этот же тип связи называют отношением "один-ко-многим" (где один представляет родителя, а многие — детей, поскольку единственная родительская запись в одной таблице может быть связана с несколькими дочерними записями в другой). Это самое распространенное отношение, но не единственное — о двух других типах отношений вы узнаете в разд. "Отношение "один-к-одному"" и "Отношение "многие-ко-многим"" далее в этой главе.

 

 

Примечание

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

 

 

Вы можете следить за любыми ответами на эту запись через RSS 2.0 ленту. Вы можете оставить ответ, или trackback с вашего собственного сайта.

Оставьте отзыв

XHTML: Вы можете использовать следующие теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

 
Rambler's Top100