←предыдущая следующая→
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ...
объектами базы дан-
ных, а с командами ввода или с полями форм ввода-вывода. При
этом могут поддерживаться лишь простейшие ограничения. Hапри-
мер, для данных количественных типов (числа, даты. денежные ве-
личины) используются, как правило, ограничения, специжицирующ-
щие возможные диапазоны изменения, а для литерных строк - шаб-
лоны представления значений.
В системе Clipper'87 эти возможности были усилены. До-
пускается использование для верификации данных в команде ввода
значения специфицированных пользователем функций. Аналогично в
dBaseIV с окнами форм ввода-вывода могут ассоциироваться огра-
ничения, заданные пользовательскими процедурами произвольного
- -
характера.
Однако ограничения такого вида, ассоциируемые лишь с
процессами ввода данных, не позволяют контролировать нарушения
целостности базы данных "изнутри" - в процессах обработки зап-
росов, а также поддерживать соотношения, связывающие значения
множества различных компонентов базы данных. Более того, подоб-
ного рода механизмы не дают возможности поддерживать более или
менее нетривиальные зависимости допустимых множеств вводимых
значений от состояния базы данных. Так, в dBase-совместимых
системах нет эффективных средств, позволяющих поддерживать пер-
вичный ключ отношений. Дубликаты кортежей включаются в отноше-
ние, хотя индекс по значениям такого ключа с параметром UNIQUE
и позволяет "спрятать" их от пользователя.
Исключением является система R:base for DOS. В ней не
только поддерживаются первичные ключи отношений (таблиц), но и
предусмотрены средства спецификации довольно сложных ограниче-
ний целостности, называемых правилами и ассоциируемых с атрибу-
тами отношений. Их аргумент может быть множество значений атри-
бутов в кортежах одного или нескольких отношений. Проверка та-
ких ограничений осуществляется при выполнении всевозможных опе-
раций обновления данных в базе данных независимо от того, выз-
ваны ли они процессами ввода данных или внутрисистемными опера-
циями. Аналогичные средства предусмотрены в системе ПАЛЬМА-ПК.