Sobes.tech
Junior

Cum păstrezi informații unice pentru fiecare element într-un tabel relațional?

sobes.tech AI

Răspuns de la AI

Într-o bază de date relațională, unicitatea înregistrării dintr-un tabel este determinată de cheia primară. Fiecare rând trebuie să aibă o valoare unică în coloana (sau setul de coloane) desemnată ca și cheia primară. Acest lucru garantează că puteți identifica fiecare înregistrare în mod univoc.

Iată câteva modalități de a asigura unicitatea:

  1. Cheie primară auto-incrementată: Abordarea cea mai comună. Se creează un câmp întreg care se mărește automat pentru fiecare înregistrare nouă.

    CREATE TABLE utilizatori (
        id INTEGER PRIMARY KEY AUTOINCREMENT, // ID unic generat automat
        nume_utilizator TEXT,
        email TEXT UNIQUE // Unicitate suplimentară pentru email
    );
    
  2. UUID (Identificator Universal Unic): Dacă trebuie să generați identificatori unici pe client sau distribuiți, puteți folosi UUID.

    CREATE TABLE produse (
        id TEXT PRIMARY KEY, // UUID unic în format text
        nume TEXT,
        pret REAL
    );
    
  3. Cheie naturală: Dacă unicitatea este garantată de unul sau mai multe câmpuri de date existente.

    CREATE TABLE Țări (
        iso_code TEXT PRIMARY KEY, // Codul țării este unic în lume
        nume TEXT
    );
    
  4. Cheie compusă: Combinație de mai multe coloane pentru a asigura unicitatea înregistrării.

    CREATE TABLE ArticoleComandă (
        order_id INTEGER,
        product_id INTEGER,
        quantity INTEGER,
        PRIMARY KEY (order_id, product_id) // Perechea order_id + product_id este unică
    );
    

Alegerea metodei depinde de cerințele de identificare a datelor. Esențial este să existe o cheie primară.