29.12.2012, Vladimír Klaus, navštíveno 8533x

MS Access
SQL

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

SQL obrázek