Sobes.tech
Middle

Ma'lumotlar bog'lanishining yaxlitligi nima?

sobes.tech AI

AIdan javob

Referens Boshqaruvi (Referential Integrity) — bu maʼlumotlar bazasidagi maʼlumotlarning xususiyati boʼlib, u jadval orasidagi havolalarning amal qilishini taʼminlaydi. U quyidagi muammolarni oldini oladi:

  • "ota" jadvalidan satr oʼchirilganda, unga havola qilgan "bola" jadvalidagi satrlar ham oʼchiriladi.
  • "ota" jadvalidagi asosiy kalit oʼzgartirilganda, unga havola qilgan "bola" jadvalidagi havolalar ham yangilanadi.
  • "bola" jadvaliga, mavjud boʼlmagan asosiy kalitga havola qilgan satr qoʼshilishi.

U tashqi kalitlar (FOREIGN KEY) yordamida amalga oshiriladi.

Tashqi kalitlar uchun cheklovlar misollari:

  • ON DELETE CASCADE: "ota" jadvalidan satr oʼchirildiğinde, unga mos "bola" jadvalidagi satrlar ham oʼchiriladi.
  • ON DELETE SET NULL: "ota" jadvalidan satr oʼchirildiğinde, "bola" jadvalidagi mos tashqi kalit NULL ga oʼrnatiladi.
  • ON DELETE RESTRICT: "ota" jadvalidan satr oʼchirish taqiqlanadi, agar unga havolalar mavjud boʼlsa.
  • ON UPDATE CASCADE: "ota" jadvalidagi asosiy kalit yangilanganida, unga mos "bola" jadvalidagi tashqi kalitlar ham yangilanadi.
-- "users" jadvali misoli (ota)
CREATE TABLE users (
    user_id INT PRIMARY KEY,
    username VARCHAR(255) NOT NULL
);

-- "orders" jadvali misoli (bola) va tashqi kalit bilan
CREATE TABLE orders (
    order_id INT PRIMARY KEY,
    user_id INT,
    order_date DATE,
    FOREIGN KEY (user_id) REFERENCES users(user_id)
        ON DELETE CASCADE /* Cheklov misoli */
        ON UPDATE CASCADE /* Cheklov misoli */
);