DataContext.ExecuteCommand(String, Object[]) Método

Definición

Ejecuta los comandos SQL directamente en la base de datos.Executes SQL commands directly on the database.

public:
 int ExecuteCommand(System::String ^ command, ... cli::array <System::Object ^> ^ parameters);
public int ExecuteCommand (string command, params object[] parameters);
member this.ExecuteCommand : string * obj[] -> int
Public Function ExecuteCommand (command As String, ParamArray parameters As Object()) As Integer

Parámetros

command
String

El comando SQL que se va a ejecutar.The SQL command to be executed.

parameters
Object[]

Matriz de parámetros que se va a pasar al comando.The array of parameters to be passed to the command. Observe el comportamiento siguiente:Note the following behavior: Si el número de objetos de la matriz es menor que el número más alto identificado en la cadena de comandos, se produce una excepción.If the number of objects in the array is less than the highest number identified in the command string, an exception is thrown.

Si la matriz contiene objetos a los que no se hace referencia en la cadena de comandos, no se produce ninguna excepción.If the array contains objects that are not referenced in the command string, no exception is thrown.

Si alguno de los parámetros es null, se convierte en DBNull.Value.If any one of the parameters is null, it is converted to DBNull.Value.

Devoluciones

Número de filas modificadas por el comando ejecutado.The number of rows modified by the executed command.

Ejemplos

db.ExecuteCommand("UPDATE Products SET UnitPrice = UnitPrice + 1.00");
    db.ExecuteCommand _
("UPDATE Products SET UnitPrice = UnitPrice + 1.00")

Comentarios

Este método es un mecanismo de paso a través para los LINQ to SQLLINQ to SQL casos en los que no se proporciona de forma adecuada para un escenario determinado.This method is a pass-through mechanism for cases where LINQ to SQLLINQ to SQL does not adequately provide for a particular scenario.

La sintaxis del comando es prácticamente la misma que la sintaxis que se usa para crear un DataCommandADO.net.The syntax for the command is almost the same as the syntax used to create an ADO.NET DataCommand. La única diferencia radica en cómo se especifican los parámetros.The only difference is in how the parameters are specified. En concreto, se especifican los parámetros mediante su inclusión entre llaves ({...}) y se enumeran empezando por 0.Specifically, you specify parameters by enclosing them in braces ({…}) and enumerate them starting from 0. El parámetro está asociado al objeto con el mismo número en la matriz de parámetros.The parameter is associated with the equally numbered object in the parameters array.

ExecuteQueryy ExecuteCommand permiten especificar un número variable de argumentos para la sustitución de parámetros.ExecuteQuery and ExecuteCommand allow you to specify a variable number of arguments for parameter substitution. Por ejemplo, puede especificar los parámetros al invocar ExecuteQuery<TResult >:For example, you can specify the parameters when invoking ExecuteQuery<TResult>:

db.ExecuteQuery<Customer>("select * from dbo.Customers where City = {0}", "London");  

Y otro ejemplo:And, another example:

db.ExecuteCommand("UPDATE Products SET QuantityPerUnit = {0} WHERE ProductID = {1}", "24 boxes", 5);  

En el ejemplo siguiente se abre una conexión y se UPDATE pasa un comando SQL al motor de SQL.The following example opens a connection and passes a SQL UPDATE command to the SQL engine.

Se aplica a