2012-04-26 3 views
13

Possible en double:
Add column, with default value, to existing table in SQL ServerAjouter une colonne de zéros à la table serveur SQL

J'ai une table dans le serveur SQL, mais que vous voulez ajouter une colonne supplémentaire pleine de zéros

Quelle serait la meilleure approche pour ce faire

att1 att2 
--------- 
1.0 5.8 
2.7 3.8 
5.1 6.8 

devient

att1 att2 extra 
---------------- 
1.0 5.8 0.0 
2.7 3.8 0.0 
5.1 6.8 0.0 
+0

La valeur par défaut devrait être 0, donc tout ce que vous avez à faire est d'ajouter la colonne. –

+2

C'est à peu près le même que: http://stackoverflow.com/questions/92082/add-column-with-default-value-to-existing-table-in-sql-server – Matt

+0

@MattH - Je suis d'accord, que est assez bon. –

Répondre

11

Si je me souviens bien, il devrait être quelque chose comme:

ALTER TABLE table_name 
ADD extra REAL DEFAULT 0 

Voir: http://msdn.microsoft.com/en-us/library/ms190273.aspx

Voir: Add a column with a default value to an existing table in SQL Server

+0

Je l'ai essayé, mais obtenir la colonne pleine de NULL ... – cMinor

+4

si la colonne est nullable doit ajouter la clause 'WITH VALUES':' alter table nom_table ajouter extra réel par défaut 0 avec des valeurs; ' –

3

Je comprends cette colonne aura toujours la valeur de 0.0. Ensuite, il ne doit pas être une vraie colonne

CREATE TABLE extraColumn (
    att1 float NULL 
    ,att2 float NULL 
    ,extra AS 0.0 
) 

Mais si vous avez besoin, vous pouvez persister il

CREATE TABLE extraColumn (
    att1 float NULL 
    ,att2 float NULL 
    ,extra AS 0.0 PERSISTED 
) 
Questions connexes