Цілісність даних поділяється на такі 3 категорії. (1) Цілісність домену: стосується вхідної валідності стовпця, чи дозволено йому бути нульовим значенням. Цілісність домену забезпечується шляхом обмеження типу (встановлення типу даних стовпця), формату (CHECK обмежень і правил) або діапазону можливих значень (обмежень FOREIGN KEY, CHECK, DEFAULT definitions, NOT NULL definition та правил). Наприклад, бали тестів учнів мають бути в межах 0~100, а стать може бути лише «чоловічою» або «жіночою». (2) Цілісність сутності: означає забезпечення унікальності всіх рядків у таблиці. Цілісність сутності вимагає, щоб усі рядки таблиці мали унікальний ідентифікатор. Цей унікальний ідентифікатор може бути стовпцем або комбінацією кількох стовпців, що називається первинним ключем. Тобто первинний ключ у таблиці повинен мати унікальне значення для всіх рядків. Методи забезпечення цілісності сутності такі: індекси, УНІКАЛЬНІ обмеження, обмеження PRIMARY KEY або атрибути IDENTITY. Наприклад, значення SNO (номер студента) у таблиці студента має бути унікальним, вона унікально ідентифікує студента, представленого відповідним записом, а дублювання номера студента є незаконним. Ім'я учня не може бути використане як основний ключ, оскільки цілком можливо, що двоє учнів мають однакове ім'я та прізвище. (3) Референтна цілісність: Це означає забезпечення референтного зв'язку між основним ключовим словом (цитованою таблицею) та зовнішнім ключовим словом (таблиця цитувань). Вона передбачає підтримку узгодженості для двох або більше таблицьних даних. Значення зовнішнього ключа пов'язує записи в таблиці посилань, що містять цей ключ, з записами в таблиці, які відповідають первинному ключу зовнішньому ключу. При введенні, зміні або видаленні записів визначені зв'язки між таблицями зберігаються з урахуванням цілісності, забезпечуючи узгодженість значень ключів у всіх таблицях. Ця узгодженість вимагає, щоб неіснуючі значення не були посилані, а якщо значення ключа змінюється, усі посилання на це значення змінюються послідовно по всій базі даних. Референтна цілісність базується на взаємозв'язку між зовнішнім ключем і первинним ключем. Наприклад, номер курсу курсу студентського навчального курсу повинен бути дійсним, а іноземний ключ CNO (номер курсу) таблиці оцінок (таблиця оцінок) буде посилатися на первинний ключ CNO (номер курсу) у таблиці курсу (розклад курсу) для забезпечення цілісності даних. Цілісність домену, цілісність сутності та референтна цілісність реалізуються відповідно у стовпцях, рядках і таблицях. Цілісність даних може бути реалізована в будь-який час, але при впровадженні цілісності даних на таблиці з існуючими даними система повинна спочатку перевірити, чи відповідають дані в таблиці цілісності реалізації, і лише якщо дані в таблиці відповідають цілісності реалізації, цілісність даних може бути успішно реалізована. |