Összefoglaló: ebben az oktatóanyagban megtanulhatja az SQL Server használatát > utasítás egy tábla oszlopának módosításához.
Az SQL Server lehetővé teszi a következő módosítások végrehajtását egy táblázat meglévő oszlopában:
- Az adattípus módosítása
- Méret módosítása
-
NOT NULL
korlátozás hozzáadása
Az oszlop adattípusának módosítása
Az oszlop adattípusának módosításához használja a következő állítást:
Code language: SQL (Structured Query Language) (sql)
Az új adattípusnak kompatibilisnek kell lennie a régivel, ellenkező esetben konverziós hibát kap, ha az oszlopnak vannak adatai, és nem sikerül konvertálni.
Lásd a következő példát.
Először hozzon létre egy új táblázatot egy oszloppal, amelynek adattípusa: INT
:
Code language: SQL (Structured Query Language) (sql)
Másodszor illesszen be néhány sort a táblázatba:
Code language: SQL (Structured Query Language) (sql)
Másodszor, mo bontsa az oszlop adattípusát INT
és VARCHAR
között:
Code language: SQL (Structured Query Language) (sql)
Harmadszor, illesszen be egy új sort egy karakterlánc-adatokkal:
Code language: SQL (Structured Query Language) (sql)
Negyedszer módosítsa az oszlop adattípusát a következőből: VARCHAR
vissza a INT
:
Code language: SQL (Structured Query Language) (sql)
Az SQL Server a következő hibát adta ki:
Code language: SQL (Structured Query Language) (sql)
Oszlop méretének módosítása
A következő utasítás új táblázatot hoz létre egy oszloppal, amelynek adattípusa: VARCHAR(10)
:
Code language: SQL (Structured Query Language) (sql)
Helyezzünk be néhány mintaadatot a t2 táblába:
Code language: SQL (Structured Query Language) (sql)
Az oszlop méretét a következőképpen növelheti:
Code language: SQL (Structured Query Language) (sql)
Azonban ha az oszlopban az SQL Server ellenőrzi a meglévő adatokat, hogy meg tudja-e konvertálni az adatokat az új méret alapján. Ha az átalakítás sikertelen, az SQL Server leállítja az utasítást és hibaüzenetet küld.
Például, ha az c
oszlop méretét 5 karakterre csökkenti:
Code language: SQL (Structured Query Language) (sql)
Az SQL Server a következő hibát adta ki:
Code language: SQL (Structured Query Language) (sql)
NEM NULL korlátozás hozzáadása semmissé váló oszlop
A következő utasítás új táblázatot hoz létre nullázható oszloppal:
Code language: SQL (Structured Query Language) (sql)
A következő utasítás beszúr néhány sort a táblába :
Code language: SQL (Structured Query Language) (sql)
Ha hozzá akarja adni a NOT NULL
korlátozást a c
, először frissítenie kell a NULL értékét nem null értékre:
Code language: SQL (Structured Query Language) (sql)
Ezután adja hozzá a NOT NULL
kényszer:
Code language: SQL (Structured Query Language) (sql)
Ebben az oktatóanyagban megtanulta az SQL Server használatát ALTER TABLE ALTER COLUMN
a módosításhoz egy meglévő oszlop egyes tulajdonságai.