POWRÓT NA STRONĘ SZKOŁY

Zmiana struktury tabeli

Do zmiany Zmiana struktury tabeli służy polecenie o następujacej składni:
ALTER TABLE [IGNORE] nazwa_tabeli zmiana1, zmiana2,... Jeżeli zostanie podana klauzula IGNORE, to podczas prób zmian powodujących zduplikowanie kluczy głównych, pierwszy zostaje wstawiony to zmienionej tabeli, natomiast pozostałe są usuwane. Domyślnie nie ma tej klauzuli i taka zmiana jest blokowana.

Ćwiczenie 4_3_2_1. Zmiana typu danych w kolumnie

Napierw zajrzyj do tabel bazy. W drugim wierszu tabeli ksiazki, Delphi 4 dla każdego ma cenę 99.99. Zajrzyj teraz do ćwiczenia w którym tworzyliśmy tabele. Tworząc tabelę ksiazki zastosowaliśmy warunek cena FLOAT(4,2), który uniemożliwia nam wpisanie liczby składającej się z więcej jak czterech cyfr. Największą taką liczbą pisaną z dokładnością 2 cyfr po przecinku może być 99.99. Tak więc tej granicy nie mogliśmy przekroczyć. Tego błędu nie zauważyliśmy wcześniej, podczas wypełniania tabel danymi, cenę wspomnianej książki określiliśmy tam na 120.34. Teraz to naprawimy. Najpierw zmienimy typ danych stosując następujące polecenie:

ALTER TABLE ksiazki
MODIFY cena FLOAT(5,2);

W składni tego polecenia występuje MODIFY. Istnieje wiele możliwych zmian dokonywanych poleceniem ALTER TABLE.

Teraz, możemy wprowadzić poprawną cenę - 120.34.

UPDATE ksiazki
SET cena=120.34
WHERE isbn='83-7197-034-X';
Rozszerzenie zakresu możliwych cen w tabeli ksiazki
Rysunek 4_3_2_1. Rozszerzenie zakresu możliwych cen w tabeli ksiazki.

Sprawdź, czy teraz cena ksiązki, jest poprawna. Wykonując to ćwiczenie założyliśmy, że nie będzie książek droższych jak 999,99 zł.

Ćwiczenie 4_3_2_2. Dodawanie kolumny w tabeli

W tabeli zamówienia utworzymy nową kolumnę podatek. W tym celu zastosujemy następujące polecenie SQL:

ALTER TABLE zamowienia
ADD podatek FLOAT(4,2) AFTER wartosc;
Tabela zamowienia z dodaną kolumną podatek
Rysunek 4_3_2_2. Tabela zamowienia z dodaną kolumną podatek.

W poleceniu podaliśmy typ danych nowej kolumny - FLOAT(4,2) oraz umiejscowienie nowej kolumny - po kolumnie wartosc (AFTER wartosc).

Ćwiczenie 4_3_2_3. Usuwanie kolumny z tabeli

W tabeli zamówienia usuniemy dodaną w poprzednim ćwiczeniu kolumnę podatek. W tym celu zastosujemy następujące polecenie SQL:

ALTER TABLE zamowienia
DROP podatek;

Sprawdź, czy kolumna podatek, została usunięta z tabeli zamówienia.