29.12.2012, Vladimír Klaus, navštíveno 8500x
Pomocí příkazu ALTER TABLE můžeme změnit strukturu tabulky. Možností je celá řada:
- ADD COLUMN – přidá nový sloupec
- DROP COLUMN – odstraní zadaný sloupec
- ALTER COLUMN – změní datový typ zadaného sloupce (v jiných databázích se používá MODIFY)
Pokud hledáte něco, čím by se přejmenoval sloupec, tak hledáte marně, více viz dále…
Pokud si vezmeme jako výchozí tabulku Reklamace, pak můžeme například přidat textový sloupec Adresa, do kterého se vejde až 100 znaků.
ALTER TABLE Reklamace ADD COLUMN Adresa CHAR(100)
Nebo naopak odstranit sloupec Popis.
ALTER TABLE Reklamace DROP COLUMN Popis
A můžeme zkusit i změnit typ sloupce s datem (původně nadefinován jako typ datum a čas) na textový typ.
ALTER TABLE Reklamace ALTER COLUMN Datum CHAR(16)
A jak je to tedy s přejmenováním sloupce? Není to možné, takže se musí použít malý trik. Přidá se nový sloupec s novým názvem, zkopírují se do něj data a starý sloupec se pak smaže. Není to nic úžasného, ale funguje to.
V následujícím příkladu si ukážeme přejmenování sloupce Popis na Popiska. Musíme postupně spustit všechny 3 dotazy.
ALTER TABLE Reklamace ADD COLUMN Popiska Memo
UPDATE Reklamace SET Popiska = Popis
ALTER TABLE Reklamace DROP COLUMN Popis