Sobes.tech
Junior

Co je to primární klíč v databázích?

sobes.tech AI

Odpověď od AI

Primární klíč je sloupec nebo sada sloupců v tabulce databáze, které jednoznačně identifikují každý řádek v této tabulce.

Hlavní vlastnosti:

  • Unikátnost: Každá hodnota primárního klíče musí být v rámci tabulky unikátní.
  • Nepřítomnost NULL (NOT NULL): Primární klíč nesmí obsahovat hodnotu NULL.
  • Stabilita: Doporučuje se, aby hodnoty primárního klíče neměnily.

Účel:

  • Zajištění integrity dat (entity).
  • Vytváření vztahů mezi tabulkami (cizí klíče odkazují na primární klíče).
  • Optimalizace dotazů (často se používá pro indexování).

Příklad vytvoření tabulky s primárním klíčem v SQL:

CREATE TABLE Customers (
    CustomerID int NOT NULL, // Sloupec pro primární klíč
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    CONSTRAINT PK_Customer PRIMARY KEY (CustomerID) // Definice primárního klíče
);

Primární klíč může být složený, sestávající z více sloupců:

CREATE TABLE OrderItems (
    OrderID int NOT NULL,
    ProductID int NOT NULL,
    Quantity int,
    CONSTRAINT PK_OrderItem PRIMARY KEY (OrderID, ProductID) // Složený primární klíč
);

Často se používá automatické generování hodnot pro primární klíč (například auto-increment).

CREATE TABLE Products (
    ProductID int NOT NULL IDENTITY(1,1), // Automaticky inkrementovaný primární klíč
    ProductName varchar(255) NOT NULL,
    CONSTRAINT PK_Product PRIMARY KEY (ProductID)
);