Sobes.tech
Junior

Hoe bewaar je unieke informatie voor elk item in een relationele tabel?

sobes.tech AI

Antwoord van AI

In een relationele database wordt de uniekheid van een record in een tabel bepaald door de primaire sleutel. Elke rij moet een unieke waarde hebben in de kolom (of set kolommen) die als primaire sleutel is aangewezen. Dit garandeert dat je elk record eenduidig kunt identificeren.

Hier zijn enkele manieren om de uniekheid te waarbaken:

  1. Auto-increment primaire sleutel: De meest gebruikte aanpak. Er wordt een geheel getalveld aangemaakt dat automatisch wordt verhoogd voor elk nieuw record.

    CREATE TABLE gebruikers (
        id INTEGER PRIMARY KEY AUTOINCREMENT, // Unieke automatisch gegenereerde ID
        gebruikersnaam TEXT,
        email TEXT UNIQUE // Extra uniekheid voor email
    );
    
  2. UUID (Universally Unique Identifier): Als je unieke identificaties op de client of gedistribueerd moet genereren, kun je UUID gebruiken.

    CREATE TABLE producten (
        id TEXT PRIMARY KEY, // Unieke UUID in tekstformaat
        naam TEXT,
        prijs REAL
    );
    
  3. Natuurlijke sleutel: Als de uniekheid wordt gegarandeerd door een of meerdere bestaande datavelden.

    CREATE TABLE Landen (
        iso_code TEXT PRIMARY KEY, // Landcode is wereldwijd uniek
        naam TEXT
    );
    
  4. Samengestelde sleutel: Combinatie van meerdere kolommen om de uniekheid van de record te waarbaken.

    CREATE TABLE BestelItems (
        bestel_id INTEGER,
        product_id INTEGER,
        hoeveelheid INTEGER,
        PRIMARY KEY (bestel_id, product_id) // De paar bestel_id + product_id is uniek
    );
    

De keuze van de methode hangt af van de vereisten voor gegevensidentificatie. Het belangrijkste is dat er een primaire sleutel is.