Upraví návrh tabulky poté, co byla vytvořena pomocí příkazu CREATE TABLE.
Poznámka: U jiných než accessových databází nepodporuje databázový stroj Microsoft Accessu použití příkazu ALTER TABLE ani žádných příkazů jazyka DDL (Data Definition Language). Místo toho používejte metody Create rozhraní DAO.
Syntaxe
ALTER TABLE table {ADD {COLUMN field type[(size)] [NOT NULL] [CONSTRAINT index] |
Typ pole ALTERCOLUMN [(velikost)] |
CONSTRAINT multifieldindex} |
DROP {COLUMN field I CONSTRAINT indexname} }
Příkaz ALTER TABLE se skládá z těchto částí:
Část |
Popis |
tabulka |
Název tabulky, která se má upravit. |
pole |
Název pole, které se přidá nebo odstraní z tabulky. Nebo název pole v tabulce, které chcete změnit. |
typ |
Datový typ pole. |
velikost |
Velikost pole v počtu znaků (pouze textová a binární pole). |
index |
Index pole. |
index_více_polí |
Definice indexu více polí, která se přidají do tabulky. |
název_indexu |
Název indexu více polí, který se má odstranit. |
Poznámky
Pomocí příkazu ALTER TABLE můžete několika způsoby změnit stávající tabulku. Jaké máte možnosti:
-
Pomocí příkazu ADD COLUMN můžete do tabulky přidat nové pole. Zadáte název pole, datový typ a (pro textová a binární pole) volitelnou velikost. Následující příkaz například přidá do tabulky Employees (Zaměstnanci) textové pole o délce 25 znaků s názvem Notes (Poznámky).
ALTER TABLE Employees ADD COLUMN Notes TEXT(25)
Pro dané pole můžete definovat také index.
Pokud pro pole zadáte omezení NOT NULL, nové záznamy v daném poli musí tvořit platná data.
-
Pomocí příkazu ALTER COLUMN můžete změnit datový typ stávajícího pole. Zadáte název pole, nový datový typ a volitelnou velikost pro textová a binární pole. Například následující příkaz změní v tabulce Employees (Zaměstnanci) datový typ pole s názvem ZipCode (PSČ, původně bylo definované jako celé číslo) na textové pole s délkou 10 znaků:
ALTER TABLE Employees ALTER COLUMN ZipCode TEXT(10)
-
Pomocí příkazu ADD CONSTRAINT můžete přidat index více polí.
-
Pomocí příkazu DROP COLUMN můžete odstranit pole. Je třeba zadat jenom název pole.
-
Pomocí příkazu DROP CONSTRAINT můžete odstranit index více polí. Po rezervovaném slovu klauzule CONSTRAINT zadáte jen název indexu.
Poznámky:
-
Není možné najednou odstranit víc než jedno pole nebo index.
-
Když chcete k tabulce přidat index založený na jednom poli nebo na více polích, můžete použít také příkaz CREATE INDEX. Pokud chcete odstranit index vytvořený pomocí příkazu ALTER TABLE nebo CREATE INDEX, můžete použít příkaz ALTER TABLE nebo DROP.
-
Omezení NOT NULL můžete použít pro jedno pole nebo v pojmenované klauzuli CONSTRAINT, která se vztahuje buď na jedno pole, nebo na více polí. Omezení NOT NULL ale můžete pro každé pole použít jen jednou. Když se pokusíte toto omezení použít vícekrát, výsledkem bude chyba za běhu.
-