Updated: November 2007
Executes SQL commands directly on the database.
Public Function ExecuteCommand ( _ command As String, _ ParamArray parameters As Object() _ ) As Integer
Dim instance As DataContext Dim command As String Dim parameters As Object() Dim returnValue As Integer returnValue = instance.ExecuteCommand(command, _ parameters)
public int ExecuteCommand( string command, params Object[] parameters )
public: int ExecuteCommand( String^ command, ... array<Object^>^ parameters )
public int ExecuteCommand( String command, Object[] parameters )
public function ExecuteCommand( command : String, ... parameters : Object[] ) : int
The SQL command to be executed.
The array of parameters to be passed to the command. Note the following behavior:
If the number of objects in the array is less than the highest number identified in the command string, an exception is thrown.
If the array contains objects that are not referenced in the command string, no exception is thrown.
If any one of the parameters is null, it is converted to DBNull.Value.
An int representing the number of rows modified by the executed command.
This method is a pass-through mechanism for cases where LINQ to SQL does not adequately provide for a particular scenario.
The syntax for the command is almost the same as the syntax used to create an ADO.NET DataCommand. The only difference is in how the parameters are specified. Specifically, you specify parameters by enclosing them in braces ({…}) and enumerate them starting from 1. The parameter is associated with the equally numbered object in the parameters array.
The following example opens a connection and passes a SQL UPDATE command to the SQL engine.
db.ExecuteCommand _ ("UPDATE Products SET UnitPrice = UnitPrice + 1.00")
db.ExecuteCommand("UPDATE Products SET UnitPrice = UnitPrice + 1.00");
Windows Vista, Windows XP SP2, Windows Server 2003
In C# enumerate parameters from 0. Ex: where PostDate > {0} Don't use SqlParameters, rather regular types like DateTime, etc...