2009-08-29 8 views
5

Comment utiliser C# pour ajouter une colonne pour une table de serveur sql?Comment utiliser C# pour ajouter une colonne pour une table de serveur sql?

Par exemple, je veux exécuter l'instruction SQL suivante dans le code C#:

alter table [Product] add 
[ProductId] int default 0 NOT NULL 
+1

La question et la réponse sont trop évidentes. Plus on peut exécuter un tel script (ajouter une colonne à une table) qu'une seule fois. Oui, DDL est pris en charge dans l'espace de noms 'SqlClient'. –

+0

@AlexKudryashev: oui, un cas de RTM-itis se passe ... – code4life

Répondre

16

Vous devez utiliser une commande:


using (DbConnection connection = new SqlConnection("Your connection string")) { 
    connection.Open(); 
    using (DbCommand command = new SqlCommand("alter table [Product] add [ProductId] int default 0 NOT NULL")) { 
     command.Connection = connection; 
     command.ExecuteNonQuery(); 
    } 
} 
+1

DbCommand implémente aussi IDisposable, donc je suggère de mettre ça aussi dans un bloc using. – TrueWill

+1

Merci. Mais le code ci-dessus a raté le: command.Connection = connection; – Mike108

+0

@TrueWill, Mike108. Vous avez raison. +1 pour vous deux. –

2
SqlCommand cmd2 = new SqlCommand(); 
// create columns for healed 
cmd2 = new SqlCommand("ALTER TABLE TotalHeals ADD "+Healee+" INT", openCon); 
cmd2.ExecuteNonQuery(); 

drôle comment SqlCommand est différent alors dbcommand

Questions connexes