I en relationsdatabase er en sekundær nøgle en unik identifikator for en række i en tabel, men den er ikke den primære nøgle. Den primære nøgle er hovedidentifikationen for en række, og den skal være unik for hver række i tabellen. En sekundær nøgle kan være en hvilken som helst kolonne eller kombination af kolonner, der unikt identificerer en række, men den behøver ikke at være unik på tværs af hele databasen.
Sekundære nøgler bruges ofte til at indeksere tabeller, hvilket kan forbedre ydeevnen ved forespørgsler i databasen. Indekser er datastrukturer, der gemmer værdierne af en bestemt kolonne eller kolonner i en sorteret rækkefølge, så databasen hurtigt kan finde rækker, der matcher en given værdi.
Sekundære nøgler kan også bruges til at håndhæve referentiel integritet, hvilket er konceptet for at sikre, at dataene i en database er konsistente. For eksempel, hvis en fremmednøglekolonne i en tabel refererer til en primærnøglekolonne i en anden tabel, kan den sekundære nøgle bruges til at sikre, at den fremmede nøgleværdi altid refererer til en gyldig række i den anden tabel.
Sekundære nøgler er en vigtig del af databasedesign, og de kan hjælpe med at forbedre ydeevnen, håndhæve referenceintegritet og gøre det lettere at forespørge i databasen.