Subtypes and Supertypes Setting the Scene

       

Подтаблицы и супертаблицы


Теперь должно быть понятно, что наша модель наследования имеет отношение к тому, что реляционных терминах можно было бы назвать наследованием доменов. Однако, рассматривая возможность наследования в реляционном контексте, многие люди (вероятно, большинство) немедленно приходят к заключению, что обсуждается некоторая форма наследования таблиц. Например, в текущих предложениях SQL3 содержится поддержка того, что иногда называют "подтаблицами" и "супертаблицами", когда некоторая таблица B может наследовать все столбцы некоторой другой таблицы A с добавлением некоторых собственных столбцов (см. рис.1). Однако наша позиция состоит в том, что идея "подтаблиц и супертаблиц" относится к совершенно другому явлению, возможно, интересному (хотя мы относимся к нему немного скептически). Но наша позиция состоит в том, что эта идея не имеет ничего общего с наследованием типов как таковым.

Рис. 1. Пример подтаблицы/супертаблицы

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

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



Содержание раздела