Przejdź do głównej treści

Kwalifikacja: INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych

Zawód: Technik informatyk, Technik programista

Kategorie: Bazy danych

W relacyjnych bazach danych encja jest reprezentowana przez

A. relację.
B. rekord.
C. tabelę.
D. kwerendę.

Pytanie z egzaminu CKE, czerwiec 2022 (arkusz EE.09-SG-22.06).

W relacyjnej bazie danych encję najczęściej reprezentuje tabela. Encja to typ obiektu, o którym chcemy przechowywać dane, na przykład Uczeń, Klient, Produkt, Zamówienie albo Pracownik. Dla takiej encji projektuje się tabelę, a jej kolumny opisują cechy tej encji, czyli atrybuty: imię, nazwisko, cena, data_zamówienia, numer_albumu itd. Dopiero pojedynczy wpis w tabeli, czyli wiersz lub rekord, reprezentuje konkretny egzemplarz encji, na przykład jednego wybranego klienta. W praktyce projektowania baz danych jest to bardzo ważne, bo dobra tabela powinna mieć jasno określony klucz główny, sensowne typy danych, ograniczenia integralności oraz powiązania z innymi tabelami przez klucze obce. Moim zdaniem to jedna z podstaw, bez której potem łatwo zrobić bałagan w SQL-u. W standardowym podejściu ERD encję z diagramu przenosi się zwykle właśnie na tabelę w modelu relacyjnym, a relacje między encjami zamienia się na klucze obce albo tabele pośredniczące.
Warto tu odróżnić kilka podobnych pojęć, bo w bazach danych bardzo łatwo pomieszać nazwy z różnych poziomów projektowania. Rekord nie reprezentuje całej encji jako typu obiektu, tylko pojedyncze wystąpienie tej encji. Jeżeli mamy encję Klient, to tabela Klienci opisuje cały zbiór klientów, a jeden rekord to dopiero konkretny klient, na przykład osoba o danym identyfikatorze. To częsty błąd myślowy: ktoś widzi dane w wierszach i uznaje, że encja to rekord, a w modelowaniu chodzi jednak o strukturę, nie tylko o pojedynczy wpis. Relacja też bywa myląca, bo w teorii relacyjnej relacja jest pojęciem matematycznym bardzo zbliżonym do tabeli, ale w szkolnym i praktycznym kontekście projektowania baz słowo relacja często oznacza powiązanie między tabelami, na przykład przez klucz obcy. Dlatego przy takim pytaniu oczekiwaną odpowiedzią jest tabela. Kwerenda natomiast nie służy do reprezentowania encji, tylko do pobierania, filtrowania, łączenia albo modyfikowania danych. Zapytanie SQL może korzystać z tabeli Klienci, może pokazać tylko aktywnych klientów, ale nie jest strukturą przechowującą encję. Z mojego doświadczenia najlepiej zapamiętać to prosto: encja daje tabelę, atrybuty dają kolumny, konkretne obiekty dają rekordy.

Wymagane logowanie

Ocenianie trudności pytań jest dostępne tylko dla zalogowanych użytkowników. Zaloguj się, aby skorzystać z pełni możliwości platformy.

Twoja ocena pomoże innym uczniom w przygotowaniu do egzaminu, a Tobie pozwoli na dostęp do spersonalizowanych statystyk.

Zgłoś błąd w pytaniu

Rozwiń sekcję i zmień pole, którego dotyczy błąd. Wysłane zostaną tylko zmienione sekcje.

Błędna kwalifikacja
Błąd w treści pytania
Błąd w treści odpowiedzi
Błąd w obrazie
Dane kontaktowe (opcjonalnie)
Podaj email, jeśli chcesz otrzymać informację o rozpatrzeniu zgłoszenia.