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: Programowanie webowe Bazy danych

ALTER TABLE artykuly MODIFY cena float; Przedstawiona kwerenda ma za zadanie w tabeli artykuly

ALTER TABLE artykuly MODIFY cena float;
Przedstawiona kwerenda ma za zadanie w tabeli artykuly
A. zmienić typ na float dla kolumny cena.
B. zmienić nazwę kolumny z cena na float.
C. usunąć kolumnę cena typu float.
D. dodać kolumnę cena o typie float, jeśli nie istnieje.
Instrukcja ALTER TABLE artykuly MODIFY cena float; służy do zmiany definicji istniejącej kolumny cena w tabeli artykuly, konkretnie do ustawienia jej typu danych na float. To jest operacja DDL, czyli dotycząca struktury tabeli, a nie samych rekordów. W praktyce taka kwerenda może być użyta, gdy wcześniej cena była np. liczbą całkowitą albo tekstem, a teraz baza ma przechowywać wartości z częścią dziesiętną, na przykład 12.50 albo 99.99. W MySQL i MariaDB słowo MODIFY oznacza modyfikację kolumny bez zmiany jej nazwy. Moim zdaniem warto jednak pamiętać o dobrej praktyce: dla cen zwykle lepszy jest typ DECIMAL, np. DECIMAL(10,2), bo float jest typem przybliżonym i może powodować drobne błędy zaokrągleń. Przed taką zmianą w prawdziwym systemie dobrze zrobić kopię zapasową, sprawdzić istniejące dane i wykonać zmianę w czasie mniejszego ruchu na stronie czy sklepie.
W tej kwerendzie łatwo pomylić znaczenie słów kluczowych, bo wszystkie dotyczą struktury tabeli, ale robią zupełnie inne rzeczy. ALTER TABLE informuje bazę danych, że chcemy zmienić budowę tabeli artykuly, natomiast MODIFY odnosi się do zmiany definicji istniejącej kolumny. Nie usuwa kolumny, bo do tego w SQL używa się konstrukcji DROP COLUMN, na przykład ALTER TABLE artykuly DROP COLUMN cena. Gdyby taka operacja została wykonana, kolumna zniknęłaby razem z danymi, więc jest to dużo bardziej destrukcyjne działanie. Tutaj tego nie ma. Nie chodzi też o zmianę nazwy kolumny z cena na float. W składni MySQL do zmiany nazwy często używa się CHANGE albo RENAME COLUMN, zależnie od wersji i systemu bazodanowego. W zapisie MODIFY cena float słowo cena wskazuje istniejącą kolumnę, a float jest typem danych, nie nową nazwą. Błędne jest również założenie, że zapytanie doda kolumnę tylko wtedy, gdy jej nie ma. Dodawanie kolumn wykonuje się przez ADD COLUMN, a nie MODIFY. Jeśli kolumna cena nie istnieje, taka kwerenda zakończy się błędem. Typowy błąd myślowy polega tu na traktowaniu float jak zwykłego identyfikatora albo na zgadywaniu znaczenia po samym ALTER TABLE. W SQL warto patrzeć na całe polecenie, bo jedno słowo kluczowe, takie jak MODIFY, DROP czy ADD, kompletnie zmienia sens operacji.

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.