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 tabeli podzespoly należy zmienić wartość pola URL na "toshiba.pl" dla wszystkich rekordów, gdzie pole producent to TOSHIBA. W języku SQL modyfikacja ta będzie miała postać:

A.
UPDATE podzespoly SET URL = 'toshiba.pl'
Źle. Brak WHERE zmieni adres we wszystkich rekordach tabeli.
B.
UPDATE podzespoly.producent = 'TOSHIBA' SET URL = 'toshiba.pl';
Źle. Po UPDATE musi stać nazwa tabeli, a warunek idzie do WHERE.
C.
UPDATE podzespoly SET URL = 'toshiba.pl' WHERE producent = 'TOSHIBA';
Dobrze. SET ustawia adres, a WHERE ogranicza zmianę do TOSHIBA.
D.
UPDATE producent = 'TOSHIBA' SET URL = 'toshiba.pl';
Źle. producent to kolumna, nie tabela, a warunek nie może stać po UPDATE.

Pytanie z egzaminu CKE, styczeń 2017 (arkusz E.14-X-17.01).

Polecenie UPDATE ma stałą budowę: nazwa tabeli, po SET nowe wartości kolumn, a po WHERE warunek wybierający rekordy do zmiany. Zapis UPDATE podzespoly SET URL = 'toshiba.pl' WHERE producent = 'TOSHIBA'; zmieni adres tylko w wierszach, w których producent to TOSHIBA. Do zapamiętania: UPDATE tabela, SET co zmienić, WHERE gdzie. Warunek w WHERE wolno pominąć tylko wtedy, gdy naprawdę chcesz zmienić każdy rekord. Przed wykonaniem dużej zmiany warto sprawdzić zakres zapytaniem SELECT * FROM podzespoly WHERE producent = 'TOSHIBA'; z identycznym warunkiem. Jedno polecenie może zmienić kilka kolumn naraz, oddzielonych przecinkami po SET.
Każdy z błędnych zapisów łamie budowę polecenia UPDATE w innym miejscu. Wariant bez WHERE jest składniowo poprawny i dlatego najgroźniejszy: wykona się bez błędu i wpisze „toshiba.pl” we wszystkich rekordach tabeli, także przy podzespołach innych producentów. Dwa pozostałe zapisy próbują umieścić warunek tuż po słowie UPDATE, w miejscu nazwy tabeli - raz jako podzespoly.producent = 'TOSHIBA', raz jako samo producent = 'TOSHIBA'. Serwer oczekuje tam nazwy tabeli, więc zgłosi błąd składni. Warunek zawsze stoi na końcu, po SET i słowie WHERE. Warto też zauważyć, że wartości tekstowe, takie jak toshiba.pl i TOSHIBA, ujmuje się w apostrofy. Zanim uruchomisz polecenie zmieniające dane, przeczytaj je od końca: najpierw warunek, potem zmienianą kolumnę - to pozwala wychwycić brak WHERE przed wykonaniem. Tak samo zbudowane są polecenia DELETE z warunkiem.

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.