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 */
);