Comment modifiez-vous le type de données d'une colonne dans SQL Server?
-
06-07-2019 - |
Question
J'essaie de remplacer une colonne d'un varchar (50)
par un nvarchar (200)
. Quelle est la commande SQL pour modifier cette table?
La solution
ALTER TABLE TableName
ALTER COLUMN ColumnName NVARCHAR(200) [NULL | NOT NULL]
MODIFIER Comme indiqué, NULL / NOT NULL aurait dû être spécifié, voir la réponse de Rob .
Autres conseils
N'oubliez pas la nullabilité.
ALTER TABLE <schemaName>.<tableName>
ALTER COLUMN <columnName> nvarchar(200) [NULL|NOT NULL]
Utilisez l'instruction Alter table.
Alter table TableName Alter Column ColumnName nvarchar(100)
La syntaxe pour modifier une colonne dans une table existante dans SQL Server (Transact-SQL) est la suivante:
ALTER TABLE table_name
ALTER COLUMN column_name column_type;
Par exemple:
ALTER TABLE employees
ALTER COLUMN last_name VARCHAR(75) NOT NULL;
Cet exemple ALTER TABLE
sur SQL Server modifie la colonne intitulée dernier nom
en tant que type de données VARCHAR (75)
et force la colonne. ne pas autoriser les valeurs NULL.
voir ici
Tant que vous augmentez la taille de votre varchar, tout va bien. Selon la référence Modifier le tableau :
La réduction de la précision ou de l'échelle d'une colonne peut entraîner la troncature des données.
Pour changer de type de données
alter table table_name
alter column column_name datatype [NULL|NOT NULL]
Pour changer de clé primaire
ALTER TABLE table_name
ADD CONSTRAINT PK_MyTable PRIMARY KEY (column_name)
Essayez ceci:
ALTER TABLE "table_name"
MODIFY "column_name" "New Data Type";