Exécute les commandes SQL directement sur la base de données.
Assembly : System.Data.Linq (dans System.Data.Linq.dll)
Public Function ExecuteCommand ( _ command As String, _ ParamArray parameters As Object() _ ) As Integer
public int ExecuteCommand( string command, params Object[] parameters )
public: int ExecuteCommand( String^ command, ... array<Object^>^ parameters )
member ExecuteCommand : command:string * parameters:Object[] -> int
Paramètres
- command
- Type : System.String
Commande SQL à exécuter.
- parameters
- Type : System.Object[]
Tableau de paramètres à passer à la commande. Notez le comportement suivant :
Si le nombre d'objets dans le tableau est inférieur au nombre le plus élevé identifié dans la chaîne de commande, une exception est levée.
Si le tableau contient des objets qui ne sont pas référencés dans la chaîne de commande, aucune exception n'est levée.
Si l'un des paramètres est null, il est converti en DBNull.Value.
Valeur de retour
Type : System.Int32int représentant le nombre de lignes modifiées par la commande exécutée.
Cette méthode est un mécanisme direct pour les cas où LINQ to SQL ne répond pas de façon adéquate aux besoins d'un scénario particulier.
La syntaxe de la commande est presque équivalente à celle utilisée pour créer un DataCommand ADO.NET. La seule différence réside dans la manière dont les paramètres sont spécifiés. Spécifiquement, vous spécifiez des paramètres en les mettant entre accolades ({…}) et les énumérez en démarrant à 0. Le paramètre est associé à l'objet de même numéro dans le tableau de paramètres.
ExecuteQuery et ExecuteCommand vous permettent de spécifier un nombre variable d'arguments pour la substitution de paramètres. Par exemple, vous pouvez spécifier les paramètres lors de l'appel à ExecuteQuery<TResult> :
db.ExecuteQuery<Customer>("select * from dbo.Customers where City = {0}", "London");
Et, un autre exemple :
db.ExecuteCommand("UPDATE Products SET QuantityPerUnit = {0} WHERE ProductID = {1}", "24 boxes", 5);
L'exemple suivant ouvre une connexion et passe une commande SQL UPDATE au moteur SQL.
db.ExecuteCommand _
("UPDATE Products SET UnitPrice = UnitPrice + 1.00")
db.ExecuteCommand("UPDATE Products SET UnitPrice = UnitPrice + 1.00");
.NET Framework
Pris en charge dans : 4, 3.5.NET Framework Client Profile
Pris en charge dans : 4Windows 7, Windows Vista SP1 ou ultérieur, Windows XP SP3, Windows Server 2008 (installation minimale non prise en charge), Windows Server 2008 R2 (installation minimale prise en charge avec SP1 ou version ultérieure), Windows Server 2003 SP2
Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.