Запросы модификации данных. Семантическая и ссылочная целостность данных

Обеспечение целостности данных является важнейшей задачей при проектировании и эксплуатации систем обработки данных (СОД).

«Проблема целостности состоит в обеспечении... правильности данных в базе данных в любой момент времени» . Целостность - актуальность и непротиворечивость информации, ее защищенность от разрушения и несанкционированного изменения.

Целостность является одним из аспектов информационной безо­пасности наряду с доступностью - возможностью с приемлемыми затратами получить требуемую информационную услугу, и конфиден­циальностью - защитой от несанкционированного прочтения.

Целостность данных - неотъемлемое свойство базы данных, и ее обеспечение является важнейшей задачей проектирования БнД. Це­лостность данных описывается набором специальных предложений, называемых ограничениями целостности. Ограничения целостнос­ти представляют собой утверждения о допустимых значениях отдель­ных информационных единиц и связях между ними. Эти ограничения определяются в большинстве случаев особенностями предметной области, хотя могут отражать и чисто информационные (лингвисти­ческие) характеристики. Например, если используются цифровые коды для обозначения какой-либо номенклатуры, то ограничения на тип используемых символов для соответствующего атрибута в БД определяются не спецификой предметной области, а просто выбран­ным способом кодирования, а ограничение, выражающееся в том, что возраст работающего должен быть не менее 16 лет, - трудовым зако­нодательством, т.е. только спецификой предметной области.

При выполнении операций над БД проверяется выполнение огра­ничений целостности. Действия, приводящие к нарушению подоб­ных ограничений, отвергаются.

Ограничения целостности могут классифицироваться по разным признакам (рис. 4.1).

Ограничения целостности могут относиться к разным информа­ционным объектам  : атрибутам (полям), кортежам (строкам, записям), отношениям (таблицам, файлам)  * , связям между файлами и т.п.

Рис. 4.1. Общая схема классификации ограничений целостности

1. Поле. Для него чаще всего используются следующие виды ог­раничений.

1.1. Тип и формат поля. Тип поля определяет допустимые для данного поля символы, а иногда и более жесткие ограничения на до­пустимые значения (как, например, для полей типа дата или логи­ческое).

1. 2. Задание диапазона значений. Обычно используется для чис­ловых полей.

1.2.1. Различают односторонние и двусторонние диапазоны. Пер­вые фиксируют значение только одной из границ (верхней или ниж­ней), вторые - обеих границ. Так, например, до определенного време­ни в нашей стране ограничивался как нижний, так и верхний предел заработной платы. Это пример двустороннего закрытого диапазона. Затем ограничение по верхнему пределу было снято: заработная пла­та не может быть меньше установленного минимума, но максималь­ное ее значение законодательно не определено - ограничение стало односторонним.

1.2.2. Диапазоны бывают открытые и закрытые. Односторон­ний диапазон всегда является открытым, двусторонний может быть как открытым, так и закрытым.

Двусторонний диапазон будет открытым, если допустимые зна­чения меньше «левой» границы и больше «правой» (рис. 4.2). Зада­ние двусторонних открытых диапазонов используется гораздо реже, чем закрытых. Некоторые СУБД поддерживают высокоуровневые средства задания двусторонних закрытых диапазонов и не поддержи­вают - открытых. Пример открытого диапазона: орган социального обеспечения поддерживает базу данных, содержащих записи о лю­дях моложе 16 лет или старше 60.

Рис. 4.2. Графическая иллюстрация понятий открытого (а)

и закрытого (б) двустороннего диапазона

1.3. Признак непустого поля. Характеризует недопустимость пу­стого значения поля в БД. Так, например, в таблице, содержащей све­дения о сотрудниках, поля «Фамилия», «Имя», «Отчество», «Оклад» должны обязательно иметь какое-то значение, а у поля «Ученая_степень» значение может отсутствовать.

1.4. Задание домена. Поле может принимать значение из задан­ного множества. Множество возможных значений какого-либо атри­бута называется доменом. Домен может задаваться перечислением входящих в него значений (например, значением поля «Пол» может быть только либо «мужской» либо «женский»; значением поля «Дол­жность» для профессорско-преподавательского состава может быть: «ассистент», «старший преподаватель», «доцент» и «профессор») или алгоритмом вычисления допустимых значений (как это обычно про­исходит для полей типа «Дата»). Последний из приведенных приме­ров свидетельствует не только о возможностях СУБД по поддержа­нию целостности данных, но и о важности процедуры выбора типа данных при проектировании баз данных.

Следует обратить внимание, что термин «домен» здесь использу­ется не как сугубо реляционный, а для обозначения множества воз­можных значений какого-либо атрибута безотносительно к использу­емой модели данных.

1.5. Специфическим ограничением на значение поля является признак его уникальности. Это ограничение проверяет допустимость значения данного поля, но при этом просматривается вся таблица (файл). Поэтому, с одной стороны, данное ограничение правильнее было бы отнести к ограничениям на таблицу. Но, с другой стороны, ограничение на уникальность поля проверяется сразу после ввода значения конкретного поля, в отличие от большинства других огра­ничений целостности на таблицу.

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

Ограничение на уникальность чаще всего возникает при отобра­жении в базе данных каких-то объектов, и уникальное поле являет­ся идентификатором этого объекта. Поэтому это ограничение цело­стности иногда называется ограничением целостности объекта (сущности).

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

1.7. Рассмотренные выше ограничения определяли проверки зна­чения поля вне зависимости от того, вводится это значение впервые или корректируются имеющиеся в базе данных значения. Ограниче­ния, которые используются только при проверке допустимости кор­ректировки, называют ограничениями перехода (или динамическими ограничениями ). Например, если в базе данных имеются поля «Возраст_сотрудника», «Стаж_работы» и т.п., то при корректировке зна­чения этих полей могут только увеличиваться. В аспекте правильнос­ти проектирования БД приведенные выше для иллюстрации поля, особенно поле «Возраст_сотрудника», лучше вообще не хранить в базе данных, а получать расчетным путем. Это не только существенно уп­ростит ведение базы данных, но и облегчит процесс обеспечения це­лостности данных.

Другим примером ограничения перехода является корректировка поля «Семейное_положение». Так, значение «вдовец» может быть исправлено только на «женат», а «холост» не может быть исправлен на «разведен» и т.п.

Ограничение целостности может относиться как к реальному, так и к виртуальному полю, т.е. полю, которое в явном виде в таблице не хранится (например, если в БД фиксируется только поле «Дата__рождения», а ограничение накладывается на возраст). Последнее порож­дает дополнительные сложности. Так, в рассматриваемом примере значение свойства «возраст» в явном виде в БД не хранится - значит, надо разрабатывать специальную процедуру проверки соблюдения ограничения в каждый момент времени и решать вопрос о периодич­ности использования этой процедуры для проверки БД. Когда про­верка происходит в момент ввода данных, то она играет двоякую роль: контроль правильности ввода данных и соответствие человека, о ко­тором вводятся данные, предъявляемым к нему требованиям. При периодической проверке данного ограничения после ввода данных происходит проверка соответствия самой предметной области уста­новленным требованиям.

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

2. Кортеж (запись, строка ) . Здесь имеются в виду ограничения на соотношения значений отдельных полей в пределах одной строки. В качестве ограничения на соотношения полей внутри одного корте­жа можно привести следующее: значение поля «Стаж» не должно пре­вышать [«Возраст» - 16] (предполагается, что трудовой стаж челове­ка начинается не ранее чем в 16 лет).

3. Таблица. Ограничения целостности, относящиеся к таблице, затрагивают разные ее строки. Чаще всего для проверки их соблюде­ния приходится просматривать всю таблицу. К таким ограничениям относятся рассмотренные выше ограничения на уникальность поля или совокупности полей. Другим примером может служить ограни­чение для таблицы, содержащей сведения об окладах сотрудников, заключающееся в том, что средняя зарплата сотрудников не должна превосходить заданную величину. Такое ограничение может иметь место в случае, когда фонд заработной платы формируется исходя из величины нормативной средней заработной платы одного сотрудни­ка и численности сотрудников.

Имеется ряд ограничений целостности, которые проверяют соот­ношения между записями одной таблицы: 1) нельзя быть родителем и ребенком одного и того же человека; 2) год рождения родителя дол­жен быть меньше, чем год рождения ребенка. Первый из приведен­ных примеров является частным случаем более общего ограничения на отсутствие циклов. К аналогичным ограничениям относятся огра­ничения на наличие циклов при определении состава изделия (узел не может входить сам в себя), при описании организационной струк­туры и во многих других случаях. Если СУБД не позволяет контроли­ровать подобные ограничения целостности, то следует написать уни­версальную программу (создать процедуру), позволяющую это делать, поскольку такого рода проверки нужны достаточно часто.

4. Совокупность взаимосвязанных таблиц . Эти ограничения отличаются от рассмотренных выше, которые затрагивали информа­ционные единицы в пределах одной таблицы.

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

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

4.2. Разновидностью ограничения целостности связи является ограничение по существованию, заключающееся в том, что для суще­ствования объекта в отношении S 1 необходимо, чтобы он был связан с объектом в отношении S 2 .

Например, если сотрудника принимают на работу, то он должен быть «приписан» к какому-либо отделу, т.е. экземпляр записи «Со­трудник» может существовать только при существовании отдела, в котором он работает, и эта связь должна быть обязательно задана. В принципе в предметной области может быть и иная ситуация, допускающая наличие сотрудников, не приписанных ни к какому отделу. В последнем случае ограничение между таблицами «Сотрудник» и «От­дел» будет ограничением по связи, но не будет ограничением по существованию; т.е. ограничение по существованию является более сильным, чем простое ограничение по связи, и предполагает не толь­ко наличие соответствующего значения идентификатора отдела в таб­лице «Отдел», но и недопустимость пустого значения поля «Отдел» в таблице «Сотрудник».

Проблема обеспечения целостности по связи (и по существова­нию) по-разному выглядит при вставке новой записи в связанную таб­лицу, при корректировке записей, при удалении связанных записей. Например, если удаляется запись из основной таблицы, то возможны следующие варианты:

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

    при удалении записи основной таблицы удаляются все связан­ные с ней записи в зависимой таблице (так называемое каскадное удаление);

    если это просто ограничение по связи, а не ограничение по су­ществованию, то возможен вариант, когда при удалении записи ос­новной таблицы значения соответствующего поля связанных с ней записей должны быть заменены на «пусто».

Удаление записей зависимой таблицы не может привести к нару­шению ограничения целостности по связи или существованию.

В предметной области в принципе может быть ситуация «обрат­ной связи по существованию», когда не может существовать запись основной таблицы без связанных с ней зависимых записей. Напри­мер, может быть ограничение, декларирующее, что не может быть отдела без сотрудников. Подобного рода ограничения контролировать сложнее, поскольку при удалении каждой записи зависимой таблицы надо смотреть, есть ли еще записи в зависимой таблице с таким же значением внешнего ключа.

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

Если изменение касается поля связи в зависимом файле, то при изменении нужно смотреть, есть ли новое значение в соответствующем поле основного файла. Иногда изменения поля связи в зависи­мом файле должны быть запрещены. Например, если имеется пара связанных таблиц «Отдел»-«Сотрудник», то изменение значения поля «Код отдела» в таблице «Сотрудник» будет означать перевод сотруд­ника в другой отдел (при изменении значения поля нужно проверять, что скорректированное значение не нарушает целостность по связи). Если же имеется пара связанных таблиц «Студент»-«Успеваемость», то изменение значение поля «Код_студента» в таблице «Успеваемость» следует запретить, поскольку такая корректировка означала бы, что результаты экзамена одного студента будут приписаны другому сту­денту, что бессмысленно.

В конкретных предметных областях могут быть и более сложные ограничения связи, затрагивающие кардинальность связи (т.е. число элементов в связи). Это можно проиллюстрировать на примере спортивных команд, которые имеют ограничения на минимальное число игроков. Например, волейбольная команда не может иметь мень­ше пяти игроков.

4.3. Кроме ограничений целостности связи ограничения, охваты­вающие несколько таблиц, могут представлять собой предложения, проверяющие отсутствие логических противоречий между данными взаимосвязанных таблиц. Например, если для каждой должности ус­тановлена определенная вилка оклада, то значение поля «Оклад» в таблице «Кадры» не должно выходить за пределы этой вилки, кото­рая зафиксирована в таблице «Должности».

5. Особым видом ограничений являются алгоритмические зави­симости между показателями. Если в БД хранятся как исходные, так и производные показатели, то необходимо поддерживать соответствие между ними. Следует обратить внимание на особенности корректи­ровки производных показателей: обычно их корректировка либо дол­жна быть запрещена, либо она должна быть следствием изменения исходных показателей.

6. Своеобразным видом ограничения является запрет на обнов­ление . Он может относиться как к отдельному полю, так и к записи или целой таблице. В некоторых СУБД существует запрет на коррек­тировку ключевого поля. Но даже в тех СУБД, которые позволяют корректировать ключевые поля, лучше стараться этого избегать.

Если объекты имеют статические свойства (на ER-диаграмме от­мечены буквой «С»), то для них можно задавать запрет на обновле­ние. Так, например, если описывается объект ЛИЧНОСТЬ, то такие атрибуты, как «Дата_рождения» и «Место_рождения» являются постоянными и меняться не могут. Задание запрета на обновление для соответствующих полей в базе данных гарантирует, что сохраненная в БД информации не будет случайно или преднамеренно искажена.

Рассмотрим следующий пример ограничения на обновление за­писи. Пусть в базе данных по кадровому составу для каждого сотруд­ника хранятся сведения об их поощрениях/наградах. Эта информа­ция хранится в таблице «Поощрения», имеющей поля: «Табельный_номер сотрудника», «Вид_поощрения», «Дата». В эту таблицу могут добавляться записи, но каждая отдельная запись изменяться не может.

В рассматриваемом примере наблюдается также ограничение свя­зи по существованию между таблицами «Поощрения» и «Сотрудни­ки»: «Табельный_номер» в таблице «Поощрения» должен обязатель­но присутствовать в таблице «Сотрудники»; при удалении записи в таблице «Сотрудники» все связанные с ней записи в таблице «Поощ­рения» должны быть также удалены.

Некоторые СУБД позволяют задавать при описании данных так называемое обязательное членство для включения и каскадное уда­ление. В этом случае целостность при корректировке будет обеспечи­ваться системой автоматически.

7. Ограничения целостности можно не только накладывать, но и отменять. При этом между отношениями могут существовать зависи­мости, и отмена одного из них может потребовать ликвидации дру­гих (ссылочных) ограничений, зависящих от первоначального. На­пример, если объявлено, что в таблице, содержащей сведения об орга­низациях, поле «Наименование_организации» является уникальным и объявлена ссылочная целостность с таблицей «Поставка», в кото­рой также имеется это поле, а потом отменяется ограничение на уни­кальность поля «Наименование_организации» в первой таблице, то ссылочное ограничение целостности также должно быть удалено (по­скольку ссылочная целостность проверяется только в случае, если в главной таблице соответствующее поле является ключевым). Неко­торые СУБД автоматически поддерживают каскадное удаление огра­ничений целостности, когда при удалении одного из них удаляются все зависящие от него ограничения целостности.

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

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

С понятием отложенного ограничения целостности тесно связа­но понятие транзакции - законченной совокупности действий над БД, которая переводит БД из одного целостного в логическом смысле со­стояния в другое целостное состояние.

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

9. Другим признаком классификации по временному признаку является классификация по режиму проверки корректности БД . Возможны два режима проверки ограничений целостности: провер­ка в момент корректировки и проверка существующей БД. Назовем первый из них оперативным режимом , второй - аудитом БД.

10. По необходимости описания ограничения целостности могут быть явными и неявными . Неявные ограничения целостности опре­деляются спецификой модели данных и проверяются СУБД автома­тически. Так, например, в иерархических СУБД запись-ребенок не может иметь несколько родителей, аналогично в сетевых СУБД с од­нотипными файлами для каждого набора может быть только один вла­делец. Неявные ограничения целостности обычно относятся к классу синтаксических ограничений целостности, в отличие от семантичес­ких ограничений целостности, обусловленных спецификой предмет­ной области. К этому же классу ограничений целостности можно отнести проверку на допустимое значение даты при выборе соответ­ствующего типа данных.

11. Рассмотренные выше виды ограничений целостности относи­лись к данным пользователя . Понятие целостности может касаться и служебной информации . Для реляционных СУБД это прежде все­го относится к поддержанию соответствия между индексными фай­лами и соответствующими им индексируемыми файлами баз данных.

12. Наряду с понятием целостности базы данных может быть вве­дено понятие информационной целостности банка данных , зак­лючающееся в обеспечении правильности взаимосвязи всех его ин­формационных компонентов (файлов баз данных, программных фай­лов, описаний форм ввода-вывода, отчетов. Следует отметить, что в некоторых СУБД, в частности Access, совокупность этих элементов называется базой данных.). Например, если для файла базы данных имеется связанная с ним форма вывода и вы удалите из файла поле, вывод которого предусмотрен в этой форме, то возникнет ошибка при работе системы. Нарушения целостности могут возникнуть, если из­менить тип данных, и во многих других случаях.

Некоторые СУБД имеют специальный механизм, позволяющий отслеживать согласованность различных информационных компонен­тов банка данных.

Для отслеживания взаимосвязи между всеми информационными компонентами БнД должны использоваться словари данных.

С обеспечением целостности БнД в целом на настоящий момент времени дело обстоит хуже, чем с контролем целостности БД в узком смысле этого понятия. Так, немногие СУБД при изменении, напри­мер, имени поля хотя бы предоставляли метаинформацию о том, ка­кие объекты (запросы, программные модули, формы, отчеты, прави­ла проверки ограничений на значения) имеют ссылку на измененный объект, не говоря уже о том, чтобы автоматически внести необходи­мые изменения.

13. Различают логическую и физическую целостность БД. Логи­ческая целостность - состояние БД, характеризующееся отсутстви­ем нарушений ограничений целостности, присущих логической мо­дели данных (т.е. неявных ограничений), и явных ограничений, за­данных декларативным или процедурным путем. Выше речь шла именно о логической целостности. Физическая целостность - от­сутствие нарушений спецификаций схемы хранения, а также физи­ческих разрушений данных на носителе.

Работоспособность программы может нарушиться не только при изменении структуры БД, но и при перемещении тех или иных фай­лов, используемых ею, в другую директорию. Это также необходимо учитывать при проектировании ИС.

Задание ограничений целостности и их проверка - важная часть проектирования и функционирования банков данных. Ограничения целостности, присущие той или иной предметной области, должны быть выявлены при обследовании и зафиксированы в инфологической модели. Вопрос о необходимости проверки ограничений цело­стности при функционировании БнД должен решаться на основе ана­лиза эффективности проекта, так как в некоторых случаях для ее реа­лизации требуются значительные затраты ресурсов.

Ограничения целостности в банках данных могут задаваться либо при описании баз данных (декларативный способ задания ), либо в программах обработки данных (процедурный способ задания ). Пер­вый подход более предпочтителен, и не только потому, что при декла­ративном способе задания используется более высокий уровень язы­ковых средств, но и потому, что один раз заданные ограничения будут контролироваться при выполнении всех операций над данными.

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

В СУБД семейства xBASE основная масса ограничений целост­ности должна была быть определена на ЯМД, так как в ЯОД практи­чески отсутствовали средства определения ограничений целостно­сти данных. Часть ограничений целостности можно было задавать при создании экранных форм.

В современных СУБД многие ограничения можно описать на ЯОД. Они хранятся в схеме данных и при работе с БД поддерживаются ав­томатически.

Для контроля целостности БД применяется также механизм триг­геров. Триггер - это действие, которое активизируется при наступле­нии указанного события (вставки, удаления, обновления записи). Триг­геры специфицируются в схеме базы данных.

Более широким понятием по отношению к триггеру является по­нятие хранимая процедура. Хранимые процедуры описывают фраг­менты логики приложения, хранятся и исполняются на сервере, что позволяет улучшать характеристики производительности.

    целостность данных - Свойство, при выполнении которого данные сохраняют заранее определенный вид и качество. целостность данных Сервис контроля доступа, гарантирующий, что принятые по сети данные не были… …

    Целостность данных термин в информатике и теории телекоммуникаций, который означает, что данные полны, условие того, что данные не были изменены при выполнении любой операции над ними, будь то передача, хранение или представление. В… … Википедия

    Целостность данных - Целостность (данных) (integrity (of data)): свойство данных сохранять точность и непротиворечивость независимо от внесенных изменений (ИСО/МЭК 2382 8)... Источник: ИНФОРМАТИЗАЦИЯ ЗДОРОВЬЯ. ТРЕБОВАНИЯ К АРХИТЕКТУРЕ ЭЛЕКТРОННОГО УЧЕТА ЗДОРОВЬЯ.… … Официальная терминология

    целостность (данных) - (integrity (of data)): Свойство данных сохранять точность и непротиворечивость независимо от внесенных изменений (ИСО/МЭК 2382 8). Источник: ГОСТ Р ИСО/ТС 18308 2008: Информатизация здоровья. Требования к архитектуре электронного учета здоровья …

    целостность данных - 2.23 целостность данных (data integrity): Соответствие значений всех данных базы данных определенному непротиворечивому набору правил. Источник: ГОСТ Р ИСО/МЭК ТО 10032 2007: Эталонная модель управления данными целостность данных: Способность… … Словарь-справочник терминов нормативно-технической документации

    Целостность информации (также целостность данных) термин в информатике и теории телекоммуникаций, который означает, что данные полны, условие того, что данные не были изменены при выполнении любой операции над ними, будь то передача,… … Википедия

    целостность системы - 1. Качество системы, которым она обладает, если корректно выполняет все свои функции, свободна от намеренных или случайных несанкционированных манипуляций. 2. Состояние системы, в котором существует полная гарантия того, что при любых условиях… … Справочник технического переводчика

    целостность - 2.15 целостность (integrity): Свойство сохранения правильности и полноты активов. Источник … Словарь-справочник терминов нормативно-технической документации

    Свойство базы данных, означающее, что БД содержит полную и непротиворечивую информацию, необходимую для корректного функционирования приложений. Для обеспечения целостности накладывают ограничения целостности. См. также: Базы данных Финансовый… … Финансовый словарь

    целостность на уровне ссылок - ссылочная целостность целостность ссылочных данных — [Л.Г.Суменко. Англо русский словарь по информационным технологиям. М.: ГП ЦНИИС, 2003.] Тематики информационные технологии в целом Синонимы ссылочная целостностьцелостность ссылочных… … Справочник технического переводчика

Книги

  • Ядро Oracle. Внутреннее устройство для администраторов и разработчиков баз данных
  • Ядро Oracle. Внутреннее устройство для администраторов и разработчиков данных , Льюис Джонатан. В данной книге автор приводит только самую необходимую информацию о внутреннем устройстве СУБД Oracle, которую должен знать каждый администратор баз данных, чтобы успешно бороться с…

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

  • существование записей-сирот (дочерних записей, не имеющих связи с родительскими записями);
  • существование одинаковых первичных ключей.

Для проверки целостности данных в криптографии используются хеш-функции , например, MD5 . Хеш-функция преобразует последовательность байт произвольного размера в последовательность байт фиксированного размера (число). Если данные изменятся, то и число, генерируемое хеш-функцией , тоже изменится.

Целостность данных - свойство, при выполнении которого данные сохраняют заранее определённый вид и качество.

Определения из стандартов

Понятие «целостность объекта » (англ. integrity ) используется как термин в теории информационной безопасности (ИБ). Под объектом понимают информацию, специализированные данные или ресурсы автоматизированной системы. Целостность информации (как ресурса автоматизированной системы) является одним из трёх основных свойств объекта ИБ. Свойства объекта ИБ:

  • доступность (англ. availability );
  • целостность (англ. integrity );
  • конфиденциальность (англ. confidentiality ).

Иногда в этот список добавляют:

  • неотказуемость (англ. non-repudiation );
  • подотчётность (англ. accountability );
  • аутентичность или подлинность (англ. authenticity );
  • достоверность (англ. reliability ).

Способы обеспечения целостности

Методы и способы реализации требований, изложенных в определениях термина, подробно описываются в рамках единой схемы обеспечения информационной безопасности объекта (защиты информации).

Основными методами обеспечения целостности информации (данных) при хранении в автоматизированных системах являются:

  • обеспечение отказоустойчивости (резервирование , дублирование , зеркалирование оборудования и данных, например через использование RAID -массивов);
  • обеспечение безопасного восстановления (резервное копирование и электронное архивирование информации).

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

При комплексном подходе к защите бизнеса, направление обеспечения целостности и доступности информации (ресурсов бизнес-процессов) перерастает в план мероприятий, направляемых на обеспечение непрерывности бизнеса .

Целостность данных в криптографии

Шифрование данных не гарантирует того, что целостность данных не будет нарушена. Поэтому для проверки целостности данных в криптографии используются дополнительные методы. Под нарушениями целостности данных понимается следующее:

  • инверсия битов ;
  • добавление новых битов (в частности совершенно новых данных) третьей стороной;
  • удаление каких-либо битов данных;
  • изменение порядка следования бит или групп бит.

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

Процесс контроля целостности обеспечивается введением в передаваемую информацию избыточности. Это достигается добавлением к сообщению некоторой проверочной комбинации байт. Такая комбинация байт вычисляется согласно определённым алгоритмам и позволяет проверить, были ли данные изменены третьей стороной. Вероятность того, что данные были изменены, служит мерой имитостойкости шифра.

Дополнительную избыточную информацию, вносимую в сообщение, называют имитовставкой . Имитовставка может вычисляться до начала или во время шифрования сообщения.

Имитовставки

Число двоичных разрядов (число бит) в имитовставке в общем случае определяется криптографическими требованиями с учётом того, что вероятность навязывания ложных данных равна 1/2 p , где p - число двоичных разрядов (число бит) в имитовставке.

Имитовставка - число, вычисляемое на основе содержимого сообщения. То есть, имитовставка является функцией сообщения:

M = f (x ) ,

  • M - имитовставка;
  • f - функция, вычисляющая имитовставку;
  • x - сообщение.

Имитовставка может использоваться как для проверки подлинности сообщения, так и для проверки его целостности. В зависимости от назначения имитовставки алгоритмы работы функций f (коды) делят на два класса:

  • коды проверки целостности сообщения (MDC , англ. modification detection code ). Алгоритмы вычисляют имитовставку, пригодную для проверки целостности (но не подлинности) данных, путём хеширования сообщения;
  • коды аутентификации (проверки подлинности) сообщения (MAC , англ. message authentication code ). Алгоритмы вычисляют имитовставку, пригодную для защиты данных от фальсификации, путём хеширования сообщения с использованием секретного ключа .

MDC

Хеш-функции для вычисления кода проверки целостности сообщений принадлежат к подклассу бесключевых хеш-функций . В реально существующих криптосистемах эти хеш-функции являются криптографическими , то есть кроме минимальных свойств хеш-функций (сжатие данных, простота вычисления дайджеста (англ. digest ) от сообщения) удовлетворяют следующим свойствам:

  • необратимость (англ. preimage resistance );
  • стойкость к коллизиям первого рода (англ. weak collision resistance );
  • стойкость к коллизиям второго рода (англ. strong collision resistance ).

В зависимости от того, каким из этих свойств удовлетворяют MDC хеш-функции , можно выделить два их подкласса:

  • однонаправленные хеш-функции (OWHF , от англ. one-way hash function ), которые удовлетворяют свойству необратимости и устойчивы к коллизиям первого рода;
  • устойчивые к коллизиям хеш-функции (CRHF , от англ. collision resistant hash function ), которые устойчивы к коллизиям первого и второго рода (вообще говоря, на практике CRHF хеш-функции удовлетворяют и свойству необратимости).

Существует три основных типа MDC алгоритмов хеш-функций , по способу их построения:

  • на блочных шифрах ; например: алгоритм Matyas-Meyer-Oseas , алгоритм Davies-Meyer , алгоритм Miyaguchi-Preneel , MDC-2 , MDC-4 ;
  • специальные (англ. customized ) алгоритмы хеширования , в которых делается упор на скорость, и которые независимы от других компонент системы (в том числе блочных шифров или компонент модульного умножения, которые могут быть уже использованы для других целей). Например: MD4 , MD5 , SHA-1 , SHA-2 , RIPEMD-128 , RIPEMD-160 ;
  • на модульной арифметике; например: MASH-1 , MASH-2 .

MAC

К MAC хеш-функциям для вычислений кодов аутентификации сообщений , подсемейству ключевых хеш-функций, относят семейство функций удовлетворяющих следующим свойствам:

  • простота вычисления дайджеста (англ. digest ) от сообщения;
  • сжатие данных - входное сообщение произвольной битовой длины преобразуется в дайджест фиксированной длины;
  • стойкость ко взлому - имея одну и более пар сообщение-дайджест, (x[i], h(x[i])), вычислительно невозможно получить новую пару сообщение-дайджест (x, h(x)), для какого-либо нового сообщения x .

Если не выполняется последнее свойство, то MAC может быть подделан. Также последнее свойство подразумевает, что ключ невозможно вычислить, то есть, имея одну или более пар (x[i], h(x[i])) с ключом k , вычислительно невозможно получить этот ключ.

Алгоритмы получения кода аутентификации сообщения могут быть разделены на следующие группы по их типу:

  • на блочных шифрах . Например, CBC-MAC , RIPE-MAC1 , RIPE-MAC3 ;
  • получение MAC из MDC ;
  • специальные (англ. customized ) алгоритмы. Например, MAA , MD5-MAC ;
  • на потоковых шифрах. Например, CRC-based MAC .

Получение MAC на основе MDC

Существуют методы получения из MDC кодов аутентификации сообщений включением секретного ключа во входные данные алгоритма MDC. Недостатком такого подхода является то, что фактически на практике большинство алгоритмов MDC разработано так, что они являются либо OWHF , либо CRHF , требования к которым отличаются от требований к MAC алгоритмам.

  1. secret prefix method : К последовательности блоков данных x {\displaystyle x} =x 1 x 2 x 3 ..x n в начало приписывается секретный ключ k : k ||x . Для данной последовательности данных с помощью итерационной хеш-функции вычисляется MDC, например, такой, что H 0 =IV (от англ. initial value ), H i =f (H i-1 ,x i) h (x ) = H n . Таким образом, MAC M {\displaystyle M} =h (k ||x ). Минусом такого подхода является то, что третья сторона может дописать в конец последовательности блоков дополнительные данные y : k ||x ||y . Новый MAC может быть вычислен без знания ключа k : M {\displaystyle M} 1 = f ( M {\displaystyle M} ,y ).
  2. secret suffix method : Секретный ключ приписывается в конец последовательности данных: x ||k . В этом случае MAC M {\displaystyle M} =h (x ||k ). В этом случае может быть применена атака методом дней рождений . При длине дайджеста в n бит. Третьей стороне понадобится порядка 2 n/2 операций, чтобы для сообщения x найти сообщение x’ такое, что h (x )= h (x’ ). При этом знание ключа k будет не обязательно. Узнав значение MAC M {\displaystyle M} для сообщения x , третья сторона сможет сгенерировать корректную пару (x’ , M {\displaystyle M} ).
  3. envelope method with padding : Для ключа k и MDC h h k (x )=(k ||p ||x ||k ), где p - строка, дополняющая ключ k до длины блока данных, для того, чтобы гарантировать, что будет произведено как минимум 2 итерации. Например, для MD5 k - 128 бит, а p - 384 бита.
  4. HMAC : Для ключа k и MDC h вычисляется MAC от сообщения h k (x )=(k ||p 1 ||h (k ||p 2 ||x )), где p 1 ,p 2 - различные строки, дополняющие k до длины блока данных. Такая конструкция довольно эффективна, несмотря на двойное использование h .

Схемы использования

Фактически, в общем виде, процесс передачи данных и их проверки на целостность выглядит следующим образом: пользователь A добавляет к своему сообщению дайджест . Эта пара будет передана второй стороне B . Там выделяется сообщение, вычисляется для него дайджест и дайджесты сравниваются. В случае совпадения значений сообщение будет считаться достоверным. Несовпадение будет говорить о том, что данные были изменены.

Обеспечение целостности данных с использованием шифрования и MDC

От исходного сообщения вычисляется MDC , M {\displaystyle M} =h (x ). Этот

"...Целостность (данных) (integrity (of data)): свойство данных сохранять точность и непротиворечивость независимо от внесенных изменений (ИСО/МЭК 2382-8)..."

Источник:

"ИНФОРМАТИЗАЦИЯ ЗДОРОВЬЯ. ТРЕБОВАНИЯ К АРХИТЕКТУРЕ ЭЛЕКТРОННОГО УЧЕТА ЗДОРОВЬЯ. ГОСТ Р ИСО/ТС 18308-2008"

(утв. Приказом Ростехрегулирования от 11.03.2008 N 44-ст)

  • - завершенность, цельность и собственная закономерность...

    Начала современного Естествознания

  • - Конгруэнтность и честность...

    Большая психологическая энциклопедия

  • - состояние, в котором сознание и бессознательное сотрудничают вместе в гармоническом согласии.Согласно Юнгу, целостность соответствует здоровью, одновременно представляя потенциал и способность...

    Словарь по аналитической психологии

  • - Конгpyэнтность и честность...

    Словарь нейролингвистического программирования

  • - англ. integrity; нем. Ganzheit. Обобщенная характеристика объектов, обладающих сложной внутренней структурой...

    Энциклопедия социологии

  • - обладание внутренним единством, неразделимость...

    Большой экономический словарь

  • - "... - состояние ПО и данных, характеризующееся отсутствием изменений преднамеренного или случайного характера..." Источник: "ОБЩИЕ ТРЕБОВАНИЯ К ПРОГРАММНОМУ ОБЕСПЕЧЕНИЮ СРЕДСТВ ИЗМЕРЕНИЙ. РЕКОМЕНДАЦИЯ...

    Официальная терминология

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

    Финансовый словарь

  • - "...Целостность): свойство данных сохранять точность и непротиворечивость независимо от внесенных изменений..." Источник: "ИНФОРМАТИЗАЦИЯ ЗДОРОВЬЯ. ТРЕБОВАНИЯ К АРХИТЕКТУРЕ ЭЛЕКТРОННОГО УЧЕТА ЗДОРОВЬЯ...

    Официальная терминология

  • - обобщённая характеристика объектов, обладающих сложной внутренней структурой...

    Большая Советская энциклопедия

  • - Р., Д., Пр....

    Орфографический словарь русского языка

  • - ЦЕ́ЛОСТНОСТЬ, -и, жен. 1. см. целостный. 2. Нераздельность, единство. Территориальная ц. государства...

    Толковый словарь Ожегова

  • - ЦЕ́ЛОСТНОСТЬ, целостности, мн. нет, жен. . отвлеч. сущ. к целостный. Целостность мировоззрения. Национальная целостность...

    Толковый словарь Ушакова

  • - це́лостность ж. отвлеч...

    Толковый словарь Ефремовой

  • - ц"...

    Русский орфографический словарь

  • - ...

    Формы слова

"Целостность данных" в книгах

Проект «Хранилище данных» и проект «Технология выявления скрытых взаимосвязей внутри больших баз данных»

Из книги автора

Проект «Хранилище данных» и проект «Технология выявления скрытых взаимосвязей внутри больших баз данных» Оба этих проекта были интегрированы в 1999 г. Благодаря им начались разработка и проведение кампаний по продаже банковских продуктов. Эти проекты создали большие

Целостность и восстановление данных

Из книги Основы AS/400 автора Солтис Фрэнк

Целостность и восстановление данных Целостность данных, хранящихся в базе крайне важна. Между тем, при одновременном чтении и изменении данных многими пользователями существует вероятность их разрушения. База данных AS/400 предоставляет надежные средства обеспечения

Экспорт данных из базы данных Access 2007 в список SharePoint

автора Лондер Ольга

Экспорт данных из базы данных Access 2007 в список SharePoint Access 2007 позволяет экспортировать таблицу или другой объект базы данных в различных форматах, таких как внешний файл, база данных dBase или Paradox, файл Lotus 1–2–3, рабочая книга Excel 2007, файл Word 2007 RTF, текстовый файл, документ XML

Перемещение данных из базы данных Access 2007 на узел SharePoint

Из книги Microsoft Windows SharePoint Services 3.0. Русская версия. Главы 9-16 автора Лондер Ольга

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

Спасение данных из поврежденной базы данных

Из книги Мир InterBase. Архитектура, администрирование и разработка приложений баз данных в InterBase/FireBird/Yaffil автора Ковязин Алексей Николаевич

Спасение данных из поврежденной базы данных Возможно, что все вышеприведенные действия не приведут к восстановлению базы данных. Это означает, что база серьезно повреждена и либо совсем не подлежит восстановлению как единое целое, либо для ее восстановления понадобится

Проверка введенных данных на уровне процессора баз данных

автора Мак-Манус Джеффри П

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

Из книги Обработка баз данных на Visual Basic®.NET автора Мак-Манус Джеффри П

Обновление базы данных с помощью объекта адаптера данных

Из книги Язык программирования С# 2005 и платформа.NET 2.0. автора Троелсен Эндрю

Обновление базы данных с помощью объекта адаптера данных Адаптеры данных могут не только заполнять для вас таблицы объекта DataSet. Они могут также поддерживать набор объектов основных SQL-команд, используя их для возвращения модифицированных данных обратно в хранилище

Глава 2 Ввод данных. Типы, или форматы, данных

Из книги Excel. Мультимедийный курс автора Мединов Олег

Глава 2 Ввод данных. Типы, или форматы, данных Работа с документами Excel сопряжена с вводом и обработкой различных данных, то есть ин формации, которая может быть текстовой, числовой, финансовой, статистической и т. д. МУЛЬТИМЕДИЙНЫЙ КУРС Методы ввода и обработки данных

3.2. Экспорт данных из ERwin в BPwin и связывание объектов модели данных со стрелками и работами

Из книги Моделирование бизнес-процессов с BPwin 4.0 автора Маклаков Сергей Владимирович

Модель данных база данных

автора Борри Хелен

Модель данных <> база данных Тот "мир", который был получен в процессе описания и анализа, является черновиком для структур ваших данных. Считается, что логическая модель должна описывать отношения и наборы. Обычная ошибка (и западня, присущая всем инструментам CASE) слепо

ГЛАВА 17. Ссылочная целостность данных.

Из книги Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ автора Борри Хелен

ГЛАВА 17. Ссылочная целостность данных. Термин ссылочная целостность относится к возможности базы данных защищать себя от получения входных данных, результатом которых может стать нарушение отношений. А именно ссылочная целостность базы данных существует в

Базы данных (классы для работы с базами данных)

Из книги Microsoft Visual C++ и MFC. Программирование для Windows 95 и Windows NT автора Фролов Александр Вячеславович

Базы данных (классы для работы с базами данных) В MFC включены несколько классов, обеспечивающую поддержку приложений, работающих с базами данных. В первую очередь это классы ориентированные на работу с ODBC драйверами – CDatabase и CRecordSet. Поддерживаются также новые средства для

Из книги Комментарий к Федеральному закону от 27 июля 2006г. N 152-ФЗ "О персональных данных" автора Петров Михаил Игоревич

Статья 16. Права субъектов персональных данных при принятии решений на основании исключительно автоматизированной обработки их персональных данных Комментарий к статье 161. Комментируемая статья определяет права субъектов персональных данных по отношению к принятию

2. Определение типа сравнения данных (от идеи к сравнению данных)

Из книги Говори на языке диаграмм: пособие по визуальным коммуникациям автора Желязны Джин

2. Определение типа сравнения данных (от идеи к сравнению данных) Данный шаг – это связующее звено между идеей и готовой диаграммой.Очень важно уяснить, что любая идея – любой аспект данных, на который вы хотите обратить внимание, – может быть выражена посредством

семантический ссылочный целостность ограничение

В ходе разработки фрагмента информационной системы в СУБД MySQL возникает задача обеспечения целостности данных. Рассмотрим само понятие целостности.

Целостность - состояние данных, когда они сохраняют свое информационное содержание и однозначность интерпретации в условиях случайных воздействий.

Предложения, описывающие целостность данных называют ограничениями целостности .

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

Семантическая целостность данных

Семантическая целостность данных - необходимое условие функционирования информационной системы любого типа. Приведем перечень основных ограничений семантической целостности. В качестве примера выберем базу данных «Салон», состоящую из таких таблиц, как «Клиент», «Мастер», «Услуга» в данном параграфе приводятся теоретические способы реализации того или иного ограничения целостности. В главе II будут более подробно рассмотрены практические способы реализации приведенных видов ограничения целостности данных.

Каждый объект в реляционной модели данных характеризуется идентификатором, назначающимся первичным ключом, уникальным по значению. В связи с этим в процессе функционирования ИС осуществляется обеспечение целостности данных путем сравнения вводимого значения первичного ключа с имеющимися в базе данных и при совпадении значений - запрет добавления записи с таким же первичным ключом.

Приведем пример: пусть в базе данных «Салон» в таблице «Клиент» имеется объект «Клиент», характеризующийся определенным набором свойств в зависимости от информационных задач. В качестве первичного ключа можно выбрать такое свойство, как «серия и номер паспорта» или «id клиента». в данном случае первичный ключ является составным, так как отдельно серия или номер паспорта не являются уникальными значениями, а ключ «id клиента» может являться как составным, так и простым.

Во многих случаях необходима проверка уникальности значений свойств, не назначенных идентификатором, при этом говорят о назначении атрибута возможным ключом. Для объекта «Клиент» возможным ключом может являться такой атрибут, как «номер банковской карты» или «номер бонусной карты клиента». Такой тип ограничения, как и проверка целостности первичного ключа, является структурным, контролируемым путем проверки равенства вводимых и уже имеющихся данных.

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

1) Допустимые значения находятся в заданном интервале. Данное ограничение предполагает, что значение свойства находится в определенном диапазоне значений. Допустим, в салоне красоты существует возрастной ценз работников: мастер не может быть младше 20 и старше 50 лет. Таким образом, ограничение целостности выглядит так «Для каждого объекта класса «Мастер» значение атрибута «возраст» находится в диапазоне 20-50 лет».

2) Значение атрибута является перечислимым. При добавлении или редактировании данных предлагается выбрать из списка определенное значение поля, однако добавлять собственное значение запрещено. В нашей базе данных такие атрибуты, как пол клиента в таблице «Клиент», являются перечислимыми. Данное ограничение формируется перечислением всех возможных значений и запретом на ввод других.

3) Значение атрибута является условно перечислимым: данные выбираются из списка, при этом существует возможность добавление элемента в список. Применяя данное ограничение целостности к атрибуту «наименование услуги» таблицы «Услуга», получаем следующую формулировку «Значение свойства «наименование услуги» является условно перечислимым и может принимать либо произвольное значение, либо одно из перечня, сформированного на основе включения уникальных значений уже введенных данных по указанному свойству».

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

Значения свойств «фамилия», «имя», «отчество» имеют следующий вид: первый символ - прописная буква кириллицы, последующие - строчные. Недопустим ввод цифр.

Формат даты рождения клиентов и мастеров, дат посещения салона, а также отпуска или больничного, предоставляемых мастерам - ДД/ММ/ГГ.

5) Запрет на NULL - значение атрибута. Такой вид ограничения распространяется прежде всего на идентификатор объекта, являющийся первичным ключом, а также на те свойства, пустое значение которых недопустимо.

К примеру, помимо идентификатора, недопустимо пустое значение таких полей, как ФИО клиента или мастера, или отсутствие информации о предоставленных клиенту услугах при указании общей стоимости, которую заплатил клиент.

6) Ограничение на значения семантически связанных полей. В данном случае на них накладываются определенные условия или функциональные зависимости. Так, в нашей базе данных значения полей «дата начала отпуска» и «дата окончания отпуска» являются семантически связанными: первая дата является меньшей, чем вторая. В этом случае следует сформулировать ограничение целостности в следующем виде: : «Для каждого объекта заданного класса между значениями свойств С1 и С2 должно всегда выполняться условие: С1<С2».

Важным аспектом реализации ограничений семантической целостности является то, что на значение свойства могут накладываться одновременно несколько видов ограничений. Например, значение свойства «возраст» в таблице «Мастер» имеет ограничение по интервалу (20-50 лет), по формату, также возможен выбор значения из списка-интервала.



В продолжение темы:
Windows

Часть вторая : "Важнейшие характеристики каждого семейства процессоров Intel Core i3/i5/i7. Какие из этих чипов представляют особый интерес" Введение Сначала мы приведём...

Новые статьи
/
Популярные