
3. Основы создания
информацноппых
систем
являются тождественным понятием типу поля (данных). В не-
котором смысле домен можно трактовать как некоторое под-
множество базисного типа данных с определенной смысловой
нагрузкой, — например, множество всех имен из множества
всевозможных значений символьного типа данных.
Определение и установление ключевых полеГпабпиц в ре-
ляционных СУБД является следствием основополагающего тре-
бования
по ограничениям целостности
та
блиц-отнощений—
требования уникальности каждого кортежа-строки. Иначегово-
ря, одно из полей таблицы, или определенная совокупность
полей, в обязательном порядке должно быть определено как
ключ. Определение ключевого поля осуществляется на основе
смьюлового эвристического анализа тематики таблицы при со-
блюдении
принципамшшмсслыюй достаточности,т.
е. коли-
чество полей, образующих ключ таблицы должно быть мини-
мальным.
Правильность определения ключа таблицы проверяется эм-
пирически по возможным ситуациям совпадения у различных
кортежей значений ключа. Во многих случаях выбор ключа яв-
ляется нетривиальной задачей. Какое поле, к примеру, выбрать
ключевым для таблицы «Сотрудники»? Напрашивается состав-
ной ключ из полей «Фамилия», «Имя», «Отчество», однако в
конкретных жизненных ситуациях имеется вероятность их со-
впадения. Можно добавить в состав ключа еще поле «Год рож-
дения», но и при этом все равно сохранится, хотя и несколько
снизится, вероятность совпадения. Альтернативным вариантом
ключа может быть «№ паспорта», если ситуации с наличием у
одного лица нескольких паспортов полностью исключаются.
Если в банке данных ограничиться только сотрудниками дан-
ной организации, то отработанным вариантом ключа может
быть табельный номер сотрудника — «Таб.
№»*".
На практике
распространенным приемом при проектировании таблиц явля-
ется искусственное введение в качестве ключа параметра, яв-
'' Табельный номер как раз и является примером
уникшьного
параметра для каж-
дого сотрудника в платежных ведомостях (таблицах) для преодоления ситуаций с со-
впадением фамилий, имен и т. д. сотрудников.
98