KWALIFIKACJA INF3 - CZERWIEC 2021 (test 2)

PYTANIE NR 16.
Relacja opisana w sposób: "Rekordowi z tabeli A odpowiada dowolna liczba rekordów z tabeli B. Jednemu rekordowi z tabeli B odpowiada dokładnie jeden rekord z tabeli A" jest relacją
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Opis mówi, że jeden rekord z tabeli A może być powiązany z wieloma rekordami z tabeli B, natomiast każdy rekord z B musi wskazywać dokładnie jeden rekord z A. To jest klasyczna relacja jeden do wielu (1:N), typowa dla układu tabela nadrzędna–podrzędna z kluczem obcym w tabeli B.

Pełne wyjaśnienie:

W relacyjnych bazach danych relację między tabelami opisuje się m.in. przez krotność (cardinality), czyli informację, ile rekordów jednej tabeli może odpowiadać rekordowi drugiej tabeli.

W treści zadania są dwa warunki:

  • Rekordowi z tabeli A odpowiada dowolna liczba rekordów z tabeli B – oznacza to, że dla pojedynczego A może istnieć 0, 1 lub wiele rekordów w B (czyli "wiele" po stronie B).
  • Jednemu rekordowi z tabeli B odpowiada dokładnie jeden rekord z tabeli A – każdy rekord B jest przypisany do jednego konkretnego A (czyli "jeden" po stronie A).

Po połączeniu tych warunków otrzymujemy relację jeden do wielu (1:N): jeden A → wiele B, a każde B → jeden A. W praktyce implementuje się to zwykle tak, że w tabeli B znajduje się klucz obcy wskazujący na klucz główny tabeli A.

Dlaczego pozostałe odpowiedzi są niepoprawne?

  • "wiele do wielu" byłoby wtedy, gdy pojedynczemu A mogłoby odpowiadać wiele B i jednocześnie pojedynczemu B mogłoby odpowiadać wiele A. To przeczy warunkowi "dokładnie jeden rekord z A dla B".
  • "jeden do jednego" wymagałoby, aby jednemu A odpowiadał co najwyżej jeden B oraz jednemu B co najwyżej jeden A. Tymczasem w zadaniu A może mieć dowolną liczbę rekordów B.
  • "nieoznaczoną" nie jest standardową nazwą krotności relacji w modelowaniu relacyjnym (w kontekście egzaminu typowo wybiera się spośród 1:1, 1:N, N:M).

Wskazówka egzaminacyjna: gdy w opisie pojawia się para zdań "A ma wiele B" oraz "B ma dokładnie jedno A", najczęściej chodzi o relację 1:N z kluczem obcym w tabeli po stronie "wielu".

Dodatkowe pytania

Dodatkowe pytania (FAQ):
Relacja jeden do wielu (1:N) oznacza, że jeden rekord w tabeli nadrzędnej może mieć powiązanych wiele rekordów w tabeli podrzędnej, ale każdy rekord w tabeli podrzędnej wskazuje tylko jeden rekord nadrzędny. Najczęściej realizuje się to kluczem obcym w tabeli po stronie "wielu".
Szukaj dwóch elementów: (1) "jeden rekord A ma dowolną/większą liczbę rekordów B", oraz (2) "jeden rekord B ma dokładnie jeden rekord A". Wystąpienie obu warunków naraz jest typowym opisem krotności 1:N, czyli A jest stroną "jeden", a B stroną "wiele".
Ten warunek eliminuje relację N:M i wskazuje, że rekord B nie może należeć do wielu rekordów A. W praktyce oznacza to jednoznaczną przynależność (np. zamówienie ma jednego klienta). Bez tego ograniczenia moglibyśmy mieć sytuację, gdzie jeden B łączy się z wieloma A.
Klucz obcy to kolumna (lub zestaw kolumn) w tabeli podrzędnej, która przechowuje wartość klucza głównego z tabeli nadrzędnej. W relacji 1:N klucz obcy zwykle znajduje się w tabeli po stronie "wielu" i wymusza, aby każdy rekord podrzędny wskazywał istniejący rekord nadrzędny.
Tak. Sformułowanie "dowolna liczba rekordów B" zwykle obejmuje także 0 rekordów. Oznacza to, że rekord w tabeli A może nie mieć żadnych rekordów w tabeli B. W implementacji zależy to od tego, czy klucz obcy w B może być pusty oraz od reguł biznesowych.
Typowe przykłady to: użytkownik–posty (jeden użytkownik ma wiele postów), kategoria–produkty, klient–zamówienia, zamówienie–pozycje zamówienia. W aplikacjach internetowych takie relacje wpływają na strukturę API, zapytania SQL (JOIN) i sposób prezentacji danych w panelu administracyjnym.
W 1:N każdy rekord po stronie "wielu" wskazuje dokładnie jeden rekord po stronie "jeden". W N:M rekordy z obu tabel mogą łączyć się z wieloma rekordami po drugiej stronie. N:M zwykle wymaga tabeli pośredniej (łączącej), aby poprawnie przechowywać powiązania.
Tabelę pośrednią stosuje się głównie przy relacji wiele do wielu (N:M), gdy jeden rekord A może być połączony z wieloma rekordami B i odwrotnie. Tabela pośrednia zawiera zwykle dwa klucze obce (do A i do B), a czasem dodatkowe atrybuty relacji, np. datę przypisania.
Najczęstsze błędy to: mylenie strony relacji (kto jest "jeden", kto "wiele"), ignorowanie słowa "dokładnie" i wybór N:M, oraz mylenie 1:N z 1:1. Pomaga metoda: sprawdź oba kierunki osobno (A→B i B→A), a dopiero potem nazwij relację.
Ćwicz rozpoznawanie krotności na krótkich opisach biznesowych (klient–zamówienie, autor–książka itp.), rysuj prosty diagram ERD i wskazuj, gdzie trafi klucz obcy. Warto też przećwiczyć zapytania JOIN dla 1:N oraz rozumienie, kiedy potrzebna jest tabela pośrednia.
info

Statystycznie 59% uczniów zna prawidłową odpowiedź. średnie

Eksperci podkreślają: "Opis mówi, że jeden rekord z tabeli A może być powiązany z wieloma rekordami z tabeli B, natomiast każdy rekord z B musi wskazywać dokładnie jeden rekord z A."

Źródła:

  • Microsoft Learn: Create table relationships (relacje 1:many, many:many), https://learn.microsoft.com/en-us/power-apps/maker/data-platform/create-edit-relationships (dostęp: 2026-02-18)
  • IBM Documentation: Referential integrity and foreign keys (koncepcja klucza obcego i relacji), https://www.ibm.com/docs/en/db2/11.5?topic=constraints-referential-integrity (dostęp: 2026-02-18)
  • PostgreSQL Documentation: Foreign Keys (przynależność rekordu do dokładnie jednego rekordu tabeli nadrzędnej), https://www.postgresql.org/docs/current/ddl-constraints.html#DDL-CONSTRAINTS-FK (dostęp: 2026-02-18)

Materiały:

  • Dokumentacja systemu SQL o kluczach obcych i integralności referencyjnej
  • Materiały kursowe z modelowania ERD i relacji 1:1, 1:N, N:M
  • Zadania praktyczne: projekt schematu bazy i mapowanie ERD na tabele

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego