Interested Article - Домен (базы данных)

Домен в реляционной модели данных тип данных , то есть множество допустимых значений .

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

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

По аналогии с математикой, типы данных делят на скалярные и нескалярные . Значение нескалярного типа (нескалярное значение) имеет множество видимых пользователю компонентов, а значение скалярного типа (скалярное значение) не имеет такового. Примерами нескалярного типа являются тип отношения и тип кортежа ; пример скалярного типа — тип «целое» .

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

Следует отличать тип как таковой (логическое понятие) и формат физического представления значений этого типа в конкретной компьютерной системе; типы относятся к уровню логической модели , а физическое представление значений — к уровню реализации . Например, операции, определённые для типа «строка», не имеют смысла для типа «число», даже если числа в конкретной реализации физически представлены строками. Значения типа «дата» нередко физически представлены вещественным числом , однако большинство операций, имеющих смысл для типа «число», бессмысленны для типа «дата».

Реляционная модель данных не предписывает обязательной поддержки каких-либо предопределённых типов, за исключением логического типа (BOOLEAN), без которого при выполнении операций обойтись невозможно . Обычно некоторый набор типов поддерживается системой (такие типы называют базовыми, встроенными, или системными), другие типы пользователь может конструировать (определять) дополнительно (такие типы называют пользовательскими, англ. user-defined types ) .

Примечания

  1. С. J. Date. On The Logical Differences Between Types, Values, and Variables // Date on database: Writings 2000—2006, Apress, 2006, ISBN 978-1-59059-746-0
  2. .
  3. С. J. Date. Why We Need Type BOOLEAN // Date on database: Writings 2000—2006, Apress, 2006, ISBN 978-1-59059-746-0

Литература

Источник —

Same as Домен (базы данных)