Rezumat: în acest tutorial, veți afla cum să utilizați SQL Server ALTER TABLE ALTER COLUMN
declarație pentru a modifica o coloană a unui tabel.
SQL Server vă permite să efectuați următoarele modificări la o coloană existentă a unui tabel:
- Modificați tipul de date
- Schimbați dimensiunea
- Adăugați o constrângere
NOT NULL
Modificați tipul de date al coloanei
Pentru a modifica tipul de date al unei coloane, utilizați următoarea declarație:
Code language: SQL (Structured Query Language) (sql)
Noul tip de date trebuie să fie compatibil cu cel vechi, altfel, veți primi o eroare de conversie în cazul în care coloana are date și nu reușește să convertească.
Consultați exemplul următor.
Mai întâi, creați un nou tabel cu o coloană al cărei tip de date este INT
:
Code language: SQL (Structured Query Language) (sql)
În al doilea rând, introduceți câteva rânduri în tabel:
Code language: SQL (Structured Query Language) (sql)
În al doilea rând, mo definiți tipul de date al coloanei de la INT
la VARCHAR
:
Code language: SQL (Structured Query Language) (sql)
În al treilea rând, introduceți un rând nou cu un șir de caractere de date:
Code language: SQL (Structured Query Language) (sql)
În al patrulea rând, modificați tipul de date al coloanei din VARCHAR
înapoi la INT
:
Code language: SQL (Structured Query Language) (sql)
SQL Server a emis următoarea eroare:
Code language: SQL (Structured Query Language) (sql)
Schimbați dimensiunea unei coloane
Următoarea declarație creează un nou tabel cu o coloană al cărei tip de date este VARCHAR(10)
:
Code language: SQL (Structured Query Language) (sql)
Să introducem câteva exemple de date în tabelul t2:
Code language: SQL (Structured Query Language) (sql)
Puteți crește dimensiunea coloanei după cum urmează:
Code language: SQL (Structured Query Language) (sql)
Cu toate acestea, atunci când reduceți dimensiunea coloană, SQL Server verifică datele existente pentru a vedea dacă poate converti date pe baza noii dimensiuni. Dacă conversia eșuează, SQL Server încetează declarația și emite un mesaj de eroare.
De exemplu, dacă reduceți dimensiunea coloanei c
la 5 caractere:
Code language: SQL (Structured Query Language) (sql)
SQL Server a emis următoarea eroare:
Code language: SQL (Structured Query Language) (sql)
Adăugați o constrângere NOT NULL la o coloană nullable
Instrucțiunea următoare creează un nou tabel cu o coloană nullable:
Code language: SQL (Structured Query Language) (sql)
Instrucțiunea următoare introduce câteva rânduri în tabel :
Code language: SQL (Structured Query Language) (sql)
Dacă doriți să adăugați constrângerea NOT NULL
la coloana c
, trebuie să actualizați mai întâi NULL la non-nul, de exemplu:
Code language: SQL (Structured Query Language) (sql)
Și apoi adăugați NOT NULL
constrângere:
Code language: SQL (Structured Query Language) (sql)
În acest tutorial, ați învățat cum să utilizați SQL Server ALTER TABLE ALTER COLUMN
pentru a modifica unele proprietăți ale unei coloane existente.