Sobes.tech
Senior

Czy klucz główny może być złożony?

sobes.tech AI

Odpowiedź od AI

Tak, klucz główny może być złożony. Złożony klucz główny to klucz składający się z kilku kolumn tabeli, które razem jednoznacznie identyfikują rekord.

Przykład w SQL:

CREATE TABLE Orders (
    OrderID INT,
    ProductID INT,
    Quantity INT,
    PRIMARY KEY (OrderID, ProductID)
);

Tutaj kombinacja OrderID i ProductID jest unikalna i służy jako klucz główny.

W Go, przy pracy z ORM (np. GORM), można opisać klucz złożony za pomocą tagów lub oddzielnych struktur, ale ważne jest, aby pamiętać, że nie wszystkie ORM-y obsługują złożone klucze w równie wygodny sposób.

Klucze złożone są przydatne, gdy unikalność rekordu jest określana przez kombinację kilku pól, a nie jednego. Jednak ich użycie może utrudniać zapytania i utrzymanie, dlatego czasami lepiej użyć klucza zastępczego (np. autoinkrementującego się ID).