Przejdź do głównej treści
  1. Strona główna
  2. Słownik
  3. INF.03
  4. Klucz obcy w SQL

Klucz obcy w SQL

Słownik kwalifikacji INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

Klucz obcy, czyli FOREIGN KEY, to pole w jednej tabeli, które wskazuje na klucz główny w innej tabeli. Służy do tworzenia relacji między tabelami.

Infografika przedstawiająca działanie klucza obcego w SQL: po lewej tabela klienci z kluczem głównym id, po prawej tabela zamowienia z kluczem obcym klient_id wskazującym na klucz główny w tabeli klienci.

Przykład

Tabela Klienci może mieć pole:

id INTEGER PRIMARY KEY

Tabela Zgloszenia może zawierać pole:

Klienci_id INTEGER

Pole Klienci_id przechowuje identyfikator klienta, którego dotyczy zgłoszenie. Jest więc kluczem obcym odnoszącym się do Klienci.id.

Użycie w JOIN

Podczas łączenia tabel należy zestawić klucz główny z odpowiadającym mu kluczem obcym:

ON Klienci.id = Zgloszenia.Klienci_id

Dzięki temu baza danych wie, które zgłoszenie należy do którego klienta.

Po co stosuje się klucze obce?

  • porządkują strukturę bazy danych,
  • zapobiegają niespójnym danym,
  • umożliwiają tworzenie relacji jeden do wielu,
  • ułatwiają poprawne łączenie tabel w zapytaniach.

W zadaniach egzaminacyjnych klucz obcy często można rozpoznać po nazwie pola, np. Klienci_id, autor_id, produkt_id.