420 votes

Comment définir une valeur par défaut pour une colonne existante

Cela ne fonctionne pas dans SQL Server 2008:

 ALTER TABLE Employee ALTER COLUMN CityBorn SET DEFAULT 'SANDNES'
 

L'erreur est:

Syntaxe incorrecte près du mot clé 'SET'.

Qu'est-ce que je fais mal?

627voto

Yuck Points 23174

Cela fonctionnera dans SQL Server:

 ALTER TABLE Employee ADD CONSTRAINT DF_SomeName DEFAULT N'SANDNES' FOR CityBorn;
 

185voto

hoodaticus Points 875
ALTER TABLE Employee ADD DEFAULT 'SANDNES' FOR CityBorn

64voto

Carlos Quintanilla Points 5371

ne peut pas utiliser alter column pour cela, utilisez plutôt add

 ALTER TABLE Employee 
ADD DEFAULT('SANDNES') FOR CityBorn
 

35voto

user3310402 Points 21

La manière correcte de le faire est la suivante:

Première étape: lancez la commande:

 Sp_help [table name] 
 

Deuxième étape: copier le nom du CONSTRAINT

Troisième étape:

Laissez tomber le DEFAULT CONSTRAINT

 ALTER TABLE [table name] DROP [NAME OF CONSTRAINT] 
 

Quatrième étape: Exécutez la commande ci-dessous

 ALTER TABLE [table name] ADD DEFAULT [DEFAULT VALUE] FOR [NAME OF TABLE]
 

4voto

steave Points 31
ALTER TABLE [dbo].[Employee] ADD  DEFAULT ('N') FOR [CityBorn]

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X