KWALIFIKACJA INF3 - STYCZEŃ 2018

PYTANIE NR 22.
W celu dodania rekordu do tabeli Pracownicy należy użyć polecenia SQL
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Poprawne dodanie rekordu realizuje instrukcja INSERT INTO ... VALUES ....
Wartości tekstowe muszą być literałami w pojedynczych cudzysłowach, np. 'Jan', 'Kowalski'. Bez cudzysłowów DBMS interpretuje je jako identyfikatory (np. kolumny), co zwykle powoduje błąd.

Pełne wyjaśnienie:

Do dodawania danych do tabel w relacyjnej bazie danych służy instrukcja DML INSERT. Najczęściej używana postać ma schemat:

INSERT INTO nazwa_tabeli (kolumna1, kolumna2, ...) VALUES (wartość1, wartość2, ...);

Odpowiedź "INSERT INTO Pracownicy (imie, nazwisko) VALUES ('Jan', 'Kowalski');" jest poprawna, ponieważ:

  • zawiera wymagane słowa kluczowe INSERT INTO oraz VALUES w prawidłowej kolejności,
  • wskazuje tabelę Pracownicy i listę kolumn (imie, nazwisko), co jednoznacznie mapuje wartości na kolumny,
  • używa literałów tekstowych w pojedynczych cudzysłowach: 'Jan' i 'Kowalski'. W SQL zapis bez cudzysłowów oznacza identyfikator (np. nazwę kolumny), a nie tekst.

Pozostałe propozycje są niepoprawne składniowo. Wariant "INSERT VALUES (Jan, Kowalski) INTO Pracownicy;" ma błędną kolejność elementów i dodatkowo nie wyznacza listy kolumn, a także nie cytuje tekstu. Wariant "INSERT VALUES Pracownicy INTO (Jan, Kowalski);" przestawia role tabeli i wartości oraz nie spełnia typowej składni INSERT. Wariant "INSERT (Jan, Kowalski) INTO Pracownicy;" pomija słowo kluczowe VALUES i również nie tworzy poprawnego zapytania.

Wskazówka egzaminacyjna: jeśli wstawiasz napisy, stosuj pojedyncze cudzysłowy, a jeśli wstawiasz liczby, zwykle zapisujesz je bez cudzysłowów. Dzięki temu łatwiej wychwycisz błędy składni jeszcze przed uruchomieniem zapytania.

Dodatkowe pytania

Dodatkowe pytania (FAQ):

INSERT INTO służy do dodawania nowych wierszy (rekordów) do tabeli w bazie danych.

Najczęściej podajesz nazwę tabeli, listę kolumn i wartości w klauzuli VALUES. Dzięki temu DBMS wie, do których pól przypisać dane.

Typowa składnia to:

INSERT INTO tabela (kol1, kol2) VALUES (wart1, wart2);

Lista kolumn jest szczególnie ważna, gdy nie wstawiasz wartości do wszystkich kolumn albo chcesz uniknąć pomyłek z kolejnością pól.

W SQL napisy są literałami tekstowymi i standardowo zapisuje się je w pojedynczych cudzysłowach.

Bez cudzysłowów Jan i Kowalski są traktowane jak identyfikatory (np. nazwy kolumn), co zwykle kończy się błędem składni lub brakiem takiej kolumny.

W standardowym SQL podwójne cudzysłowy służą głównie do cytowania identyfikatorów (np. nazw kolumn z polskimi znakami), a nie napisów.

Napisy zapisuje się w pojedynczych cudzysłowach. Niektóre silniki mają tryby zgodności, ale na egzaminie trzymaj się zapisu z apostrofami.

Stosuj zasadę: tekst w cudzysłowach, liczby bez. Przykład: INSERT INTO Produkty (nazwa, cena) VALUES ('Laptop', 3500);

To ułatwia też wykrycie błędów, gdy przypadkowo potraktujesz tekst jak nazwę kolumny.

W wielu DBMS możesz wstawić wiele wierszy przez listę wartości:

INSERT INTO Tabela (kol1, kol2) VALUES ('A','B'), ('C','D');

To szybsze niż wykonywanie wielu osobnych INSERT i często spotykane w danych testowych.

Najczęstsze pomyłki to: brak pojedynczych cudzysłowów dla tekstu, przestawienie kolejności INTO/VALUES oraz pominięcie listy kolumn przy niepełnym zestawie danych.

Warto zapamiętać stały szablon: INSERT INTO tabela (kolumny) VALUES (wartości).

Listę kolumn można pominąć, gdy podajesz wartości dla wszystkich kolumn tabeli w dokładnie tej kolejności, w jakiej kolumny są zdefiniowane.

W praktyce i na egzaminie bezpieczniej jest kolumny wypisać, bo zmniejsza to ryzyko błędu kolejności.

Identyfikator to nazwa obiektu, np. tabeli lub kolumny. Gdy napis nie jest w apostrofach, parser SQL próbuje odczytać go jako nazwę.

Dlatego VALUES (Jan) może być rozumiane jako "wstaw wartość z kolumny Jan", co jest niepoprawne, jeśli taka kolumna nie istnieje.

Po wykonaniu INSERT zwykle dostajesz informację o liczbie wstawionych wierszy (np. 1 row affected).

Dodatkowo możesz wykonać SELECT z filtrem, aby zobaczyć dodany rekord, np. po nazwisku. W aplikacjach WWW warto też obsłużyć błędy i transakcje.

info

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

Eksperci podkreślają: "Poprawne dodanie rekordu realizuje instrukcja INSERT INTO ..."

Źródła:

  • ISO/IEC 9075-1:1992 (SQL-92), część dotycząca literałów znakowych i instrukcji INSERT (standard SQL-92) – źródło normatywne
  • MySQL 8.0 Reference Manual: "INSERT Statement" https://dev.mysql.com/doc/refman/8.0/en/insert.html - accessed 2026-03-13
  • PostgreSQL 15 Documentation: "INSERT" https://www.postgresql.org/docs/15/sql-insert.html - accessed 2026-03-13

Materiały:

  • Dokumentacja wybranego DBMS (MySQL/PostgreSQL/SQL Server/SQLite) – sekcja INSERT
  • Materiały szkolne z podstaw SQL (DML: SELECT/INSERT/UPDATE/DELETE)
  • Ćwiczenia praktyczne: tworzenie tabel i wstawianie rekordów w konsoli SQL

Aktualizacja pytania: 03.04.2026



Aktualizacja pytania: 03.04.2026
📡 Brak połączenia internetowego