Quel est le SQL pour modifier la longueur de champ d'une colonne de table dans SQL Server

Quel est le SQL pour faire passer un champ de nvarchar(50) à nvarchar(250) ?

Lorsque j'essaie de le modifier via SQL Server Management Studio, il ne me permet pas de le faire, alors j'ai pensé que j'essaierais SQL directement au lieu d'utiliser l'interface graphique.

 Alter table tblname ALTER Column colname nvarchar(250) [NOT] NULL 

Si NULL / NOT NULL n'est pas spécifié, la colonne deviendra Nullable quelle que soit la spécification d'origine.

 ALTER TABLE MyTable ALTER COLUMN MyColumn varchar(NewSize) 

La déclaration ALTER TABLE

L'instruction ALTER TABLE est utilisée pour append, supprimer ou modifier des colonnes dans une table existante. SQL ALTER TABLE Syntaxe

Pour append une colonne dans une table, utilisez la syntaxe suivante:

 ALTER TABLE table_name ADD column_name datatype 

Pour supprimer une colonne dans une table, utilisez la syntaxe suivante (notez que certains systèmes de database n'autorisent pas la suppression d'une colonne):

 ALTER TABLE table_name DROP COLUMN column_name 

Pour modifier le type de données d'une colonne dans une table, utilisez la syntaxe suivante:

SQL Server / MS Access:

 ALTER TABLE table_name ALTER COLUMN column_name datatype 

Mon SQL / Oracle (version antérieure 10G):

ALTER TABLE nom_table MODIFY COLUMN nom_colonne type de données

Oracle 10G et plus récent:

 ALTER TABLE table_name MODIFY column_name datatype 

Il est parfois plus sûr de vérifier si la table existe en premier lieu …

 IF COL_LENGTH('[tablename]','[tablecolumn]') IS NULL BEGIN ALTER TABLE tablename ALTER COLUMN [tablecolumn] NVARCHAR(500) END 

Pour les développeurs Oracle SQL

Modifiez le nom de la table MODIFY (nom de col varchar2 (250));

Description: Cela augmentera la longueur de la colonne. où 250 représente la longueur mise à jour (incrémentée) de la colonne.

Pour changer le type de données de plusieurs colonnes mais le même type de données

 alter table employee modify (firstname varchar2(9),lastname varchar2(9),email varchar2(9)); -- Table altered. alter table employee modify (firstname,lastname,email varchar2(9)); -- Table altered.