Come si modifica il tipo di dati di una colonna in SQL Server?
-
06-07-2019 - |
Domanda
Sto cercando di cambiare una colonna da varchar (50)
a nvarchar (200)
. Qual è il comando SQL per modificare questa tabella?
Soluzione
ALTER TABLE TableName
ALTER COLUMN ColumnName NVARCHAR(200) [NULL | NOT NULL]
Modifica Come indicato NULL / NOT NULL avrebbe dovuto essere specificato, vedere anche la risposta di Rob .
Altri suggerimenti
Non dimenticare la nullità.
ALTER TABLE <schemaName>.<tableName>
ALTER COLUMN <columnName> nvarchar(200) [NULL|NOT NULL]
Utilizza l'istruzione Alter table.
Alter table TableName Alter Column ColumnName nvarchar(100)
La sintassi per modificare una colonna in una tabella esistente in SQL Server (Transact-SQL) è:
ALTER TABLE table_name
ALTER COLUMN column_name column_type;
Ad esempio:
ALTER TABLE employees
ALTER COLUMN last_name VARCHAR(75) NOT NULL;
Questo esempio di SQL Server ALTER TABLE
modificherà la colonna denominata last_name
in modo che sia un tipo di dati VARCHAR (75)
e imponga la colonna per non consentire valori null.
vedi qui
Finché stai aumentando le dimensioni del tuo varchar, stai bene. Secondo il Modifica tabella riferimento:
La riduzione della precisione o della scala di una colonna può causare il troncamento dei dati.
Per modificare il tipo di dati
alter table table_name
alter column column_name datatype [NULL|NOT NULL]
Per modificare la chiave primaria
ALTER TABLE table_name
ADD CONSTRAINT PK_MyTable PRIMARY KEY (column_name)
Prova questo:
ALTER TABLE "table_name"
MODIFY "column_name" "New Data Type";