Sobes.tech
Junior

Как да запазим уникална информация за всеки елемент в релационна таблица?

sobes.tech AI

Отговор от AI

В релационната база данни уникалността на запис в таблицата се определя от първичния ключ. Всеки ред трябва да има уникална стойност в колоната (или набора от колони), определени като първичен ключ. Това гарантира, че можете да идентифицирате всеки запис еднозначно.

Ето някои начини за осигуряване на уникалност:

  1. Автоматично увеличаващ се първичен ключ: Най-често срещаният подход. Създава се цяло число, което автоматично се увеличава за всеки нов запис.

    CREATE TABLE потребители (
        id INTEGER PRIMARY KEY AUTOINCREMENT, // Уникален автоматично генериран ID
        потребителско_име TEXT,
        имейл TEXT UNIQUE // Допълнителна уникалност за имейл
    );
    
  2. UUID (Универсално уникален идентификатор): Ако трябва да генерирате уникални идентификатори на клиента или разпределено, можете да използвате UUID.

    CREATE TABLE продукти (
        id TEXT PRIMARY KEY, // Уникален UUID във формат текст
        име TEXT,
        цена REAL
    );
    
  3. Естествен ключ: Ако уникалността се гарантира от едно или повече съществуващи полета данни.

    CREATE TABLE държави (
        iso_code TEXT PRIMARY KEY, // Кодът на държавата е уникален в света
        име TEXT
    );
    
  4. Съставен ключ: Комбинация от няколко колони за гарантиране на уникалността на записа.

    CREATE TABLE поръчки_продукти (
        поръчка_id INTEGER,
        продукт_id INTEGER,
        количество INTEGER,
        PRIMARY KEY (поръчка_id, продукт_id) // Парата поръчка_id + продукт_id е уникална
    );
    

Изборът на метод зависи от изискванията за идентификация на данните. Важното е да има първичен ключ.