Решение практических



бет39/55
Дата12.05.2023
өлшемі1,43 Mb.
#92531
түріРешение
1   ...   35   36   37   38   39   40   41   42   ...   55

Краткая теория


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


В SQL Server существуют следующие механизмы обеспечения целостности данных в таблице: Механизмы декларативной целостности и Механизмы процедурной целостности. [10]

Механизмы декларативной целостности


  • NULL / NOT NULL ограничение – задаётся на уровне какого-то столбца и определяет, может ли хранится значение NULL в колонке.

  • UNIQUE ограничение – позволяет обеспечить уникальность значений в одном или нескольких столбцах.

  • PRIMARY KEY ограничение – практически тоже самое, что и UNIQUE ограничение, но в отличие от него, PRIMARY KEY не позволяет хранить NULL.

  • CHECK ограничение – позволяет задать некое логическое условие, которое должно быть истинным (TRUE) при вставке или обновлении данных в таблице. Может быть задано как на уровне одного столбца, так и на уровне таблицы.

  • RULE создает объект, называемый правилом. Будучи привязанным к столбцу, имеющему псевдоним типа данных, правило определяет значения, которые могут быть вставлены в этот столбец.

  • FOREIGN KEY ограничение – позволяет обеспечить ссылочную связность двух таблиц. При вставке значения в колонку (или колонки) с FOREIGN KEY ограничением, будет производится проверка на наличие такого же значения в таблице, на которую указывает FOREIGN KEY. Если значения нет, то обновление или вставка строки завершается с ошибкой. Исключением может быть только значение NULL, если на колонке не задано ограничение NOT NULL. Кроме того, ссылаться можно только на колонку с уникальными значениями, т.е. с UNIQUE или PRIMARY KEY ограничением. Так же можно задать поведение, на случай обновления или удаления строки, в «отцовской» таблице:

  • NO ACTION – отцовскую таблицу запрещено менять

  • CASCADE – подчинённые строки будут обновлены или удалены, в зависимости от выполняемого действием над отцовской таблицей

  • SET NULL – значение в подчинённой таблице будет установлено в NULL

  • SET DEFAULT – значение в подчинённой таблице будет установлено в значение по умолчанию. [2]


Достарыңызбен бөлісу:
1   ...   35   36   37   38   39   40   41   42   ...   55




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет