Shrnutí: v tomto kurzu se naučíte používat SQL Server ALTER TABLE ALTER COLUMN
příkaz k úpravě sloupce tabulky.
SQL Server umožňuje provádět následující změny existujícího sloupce tabulky:
- Upravit datový typ
- Změnit velikost
- Přidat
NOT NULL
omezení
Upravit datový typ sloupce
Chcete-li upravit datový typ sloupce, použijete následující příkaz:
Code language: SQL (Structured Query Language) (sql)
Nový datový typ musí být kompatibilní se starým, jinak, zobrazí se chyba převodu v případě, že sloupec obsahuje data a nepodaří se jej převést.
Viz následující příklad.
Nejprve vytvořte novou tabulku s jedním sloupcem, jehož datový typ je INT
:
Code language: SQL (Structured Query Language) (sql)
Zadruhé, vložte do tabulky několik řádků:
Code language: SQL (Structured Query Language) (sql)
Zadruhé, po odlišit datový typ sloupce od INT
do VARCHAR
:
Code language: SQL (Structured Query Language) (sql)
Zatřetí, vložte nový řádek s daty řetězce znaků:
Code language: SQL (Structured Query Language) (sql)
Začtvrté, upravte datový typ sloupce z VARCHAR
zpět na INT
:
Code language: SQL (Structured Query Language) (sql)
SQL Server vydal následující chybu:
Code language: SQL (Structured Query Language) (sql)
Změna velikosti sloupce
Následující příkaz vytvoří novou tabulku s jedním sloupcem, jehož datový typ je VARCHAR(10)
:
Code language: SQL (Structured Query Language) (sql)
Vložme do tabulky t2 několik ukázkových dat:
Code language: SQL (Structured Query Language) (sql)
Velikost sloupce můžete zvětšit následujícím způsobem:
Code language: SQL (Structured Query Language) (sql)
Když však zmenšíte velikost sloupce, sloupec, SQL Server zkontroluje existující data, aby zjistil, zda dokáže převést data na základě nové velikosti. Pokud převod selže, SQL Server příkaz ukončí a vydá chybovou zprávu.
Například pokud zmenšíte velikost sloupce c
na 5 znaků:
Code language: SQL (Structured Query Language) (sql)
SQL Server vydal následující chybu:
Code language: SQL (Structured Query Language) (sql)
Přidat omezení NE NULL do sloupec s možnou hodnotou Null
Následující příkaz vytvoří novou tabulku se sloupcem s možnou hodnotou Null:
Code language: SQL (Structured Query Language) (sql)
Následující příkaz vloží některé řádky do tabulky :
Code language: SQL (Structured Query Language) (sql)
Pokud chcete přidat omezení NOT NULL
do sloupce c
, musíte nejprve aktualizovat NULL na nenulovou, například:
Code language: SQL (Structured Query Language) (sql)
A poté přidat NOT NULL
omezení:
Code language: SQL (Structured Query Language) (sql)
V tomto výukovém programu jste se naučili, jak používat SQL Server ALTER TABLE ALTER COLUMN
k úpravám některé vlastnosti existujícího sloupce.