Sobes.tech
Junior

Маалыматтар базасындағы ачкычтар эмне?

sobes.tech AI

AIден жооп

Маалыматтар базасында ачкыч — бул бир же бир нече талаа (баардык) таблицанын, алар уникалдуу түрдө жазууларды (саптарды) аныктоо же таблицалар ортосунда байланыштарды түзүү үчүн кызмат кылган бөлүмдөр (сутундар).

Ачкыч түрлөрү:

  • Негизги ачкыч (Primary Key; PK):
    • Ар бир жазууну таблицада уникалдуу түрдө аныктайт.
    • NULL маанилерди камтышы мүмкүн эмес.
    • Бир таблицада бир гана негизги ачкыч болушу мүмкүн.
  • Чет элдик ачкыч (Foreign Key; FK):
    • Эки таблица ортосунда байланыш түзөт, башка таблицанын негизги же уникалдуу ачкычына шилтеме кылат.
    • Сылтоо бүтүндүгүн камсыздайт, шилтеме кылынган жазуунун бар экендигин кепилдейт.
  • Уникалдуу ачкыч (Unique Key; UK):
    • белгиленген талаалардагы маанилердин уникалдуулугун камсыздайт, бирок NULL маанилерди камтышы мүмкүн (адатта бирден көп NULL болбойт).
    • Бир таблицада бир нече уникалдуу ачкычтар болушу мүмкүн.
  • Кандидаттык ачкыч (Candidate Key):
    • Ар кандай минималдуу талаалардын топтому, ал бир жазууну уникалдуу аныктай алат.
    • Кандидаттык ачкычтардан бири негизги ачкыч катары тандалат.
  • Супер ачкыч (Super Key):
    • Жазууну уникалдуу аныктоочу талаалардын топтому. Кандидаттык ачкыч — эң кичинекей супер ачкыч.

Чет элдик ачкычты колдонуу мисалы:

CREATE TABLE Orders (
    order_id INT PRIMARY KEY, -- Orders таблицасы үчүн негизги ачкыч
    customer_id INT,
    order_date DATE,
    FOREIGN KEY (customer_id) REFERENCES Customers(customer_id) -- Customers таблицасына шилтеме кылган чет элдик ачкыч
);

CREATE TABLE Customers (
    customer_id INT PRIMARY KEY, -- Customers таблицасы үчүн негизги ачкыч
    customer_name VARCHAR(255)
);