En sammensat nøgle er en kombination af to eller flere kolonner i en tabel, der kan bruges til entydigt at identificere hver række i tabellen, når kolonnerne kombineres, er entydigheden garanteret, men når den tages individuelt, garanterer den ikke unikhed.
Nogle gange er der behov for mere end én attribut for entydigt at identificere en enhed. En primær nøgle, der er lavet af kombinationen af mere end én attribut, er kendt som en sammensat nøgle.
Med andre ord kan vi sige:
Sammensat nøgle er en nøgle, som er kombinationen af mere end ét felt eller kolonne i en given tabel. Det kan være en kandidatnøgle eller primærnøgle.
Kolonner, der udgør den sammensatte nøgle, kan være af forskellige datatyper.
SQL-syntaks til at angive sammensat nøgle:
CREATE TABLE TABLE_NAME (COLUMN_1, DATA_TYPE_1, COLUMN_2, DATA_TYPE_2, ??? PRIMARY KEY (COLUMN_1, COLUMN_2, ...));
I alle tilfælde består den oprettede sammensatte nøgle af COLUMN1 og COLUMN2.
MySQL:
CREATE TABLE SAMPLE_TABLE (COL1 integer, COL2 varchar(30), COL3 varchar(50), PRIMARY KEY (COL1, COL2));
MySQL:
sammenligne med strenge i java
CREATE TABLE SAMPLE_TABLE (COL1 integer, COL2 varchar(30), COL3 varchar(50), PRIMARY KEY (COL1, COL2));
Oracle:
CREATE TABLE SAMPLE_TABLE CREATE TABLE SAMPLE_TABLE (COL1 integer, COL2 varchar(30), COL3 varchar(50), PRIMARY KEY (COL1, COL2));
SQL Server:
Lad os se syntaksen for den udvalgte topsætning:
CREATE TABLE SAMPLE_TABLE (COL1 integer, COL2 nvarchar(30), COL3 nvarchar(50), PRIMARY KEY (COL1, COL2));