ServerConnection.ExecuteNonQuery Método (String, ExecutionTypes)
Ejecuta una instrucción con las opciones de ejecución especificadas que no devuelve ningún conjunto de resultados.
Espacio de nombres: Microsoft.SqlServer.Management.Common
Ensamblado: Microsoft.SqlServer.ConnectionInfo (en Microsoft.SqlServer.ConnectionInfo.dll)
Sintaxis
'Declaración
Public Function ExecuteNonQuery ( _
sqlCommand As String, _
executionType As ExecutionTypes _
) As Integer
'Uso
Dim instance As ServerConnection
Dim sqlCommand As String
Dim executionType As ExecutionTypes
Dim returnValue As Integer
returnValue = instance.ExecuteNonQuery(sqlCommand, _
executionType)
public int ExecuteNonQuery(
string sqlCommand,
ExecutionTypes executionType
)
public:
int ExecuteNonQuery(
String^ sqlCommand,
ExecutionTypes executionType
)
member ExecuteNonQuery :
sqlCommand:string *
executionType:ExecutionTypes -> int
public function ExecuteNonQuery(
sqlCommand : String,
executionType : ExecutionTypes
) : int
Parámetros
- sqlCommand
Tipo: String
Valor String que especifica el comando Transact-SQL que se va a ejecutar.
- executionType
Tipo: Microsoft.SqlServer.Management.Common.ExecutionTypes
Valor de objeto ExecutionTypes que especifica las opciones de ejecución para la instrucción Transact-SQL.
Valor devuelto
Tipo: Int32
Valor Int32 que especifica el número total de filas afectadas por el comando Transact-SQL para las instrucciones UPDATE, INSERT y DELETE.Para todos los demás tipos de instrucciones, el valor devuelto es -1.
Comentarios
El comando de Transact-SQL suele ser una instrucción o un procedimiento almacenado de (DDL) de lenguaje de definición de datos que afectan a la configuración del servidor. La propiedad de Text de objeto de CapturedSql se puede utilizar como parámetro de sqlCommand para permitir la ejecución de una instrucción capturadas de Transact-SQL . El parámetro de sqlCommand contiene una sola instrucción de Transact-SQL .
Solo el método de ExecuteNonQuery reconocen los comandos SQLCMD. Si aparece el parámetro de sqlCommand contiene una instrucción que no sea comando SQLCMD después se produce un error en el método y una excepción de ExecutionFailureException , a menos que el parámetro de executionType se haya establecido para incluir el valor de ExecutionTypes.ContinueOnError .
Ejemplos
VB
'Connect to the local, default instance of SQL Server.
Dim srv As Server
srv = New Server
'Set the execution mode to CaptureSql for the connection.
srv.ConnectionContext.SqlExecutionModes = SqlExecutionModes.CaptureSql
'Make a modification to the server that is to be captured.
srv.UserOptions.AnsiNulls = True
srv.Alter()
'Iterate through the strings in the capture buffer and display the captured statements.
Dim s As String
For Each s In srv.ConnectionContext.CapturedSql.Text
Console.WriteLine(s)
Next
'Execute the captured statements.
srv.ConnectionContext.ExecuteNonQuery(srv.ConnectionContext.CapturedSql.Text)
'Revert to immediate execution mode.
srv.ConnectionContext.SqlExecutionModes = SqlExecutionModes.ExecuteSql
PowerShell
$srv = new-object Microsoft.SqlServer.Management.Smo.Server
$srv.ConnectionContext.SqlExecutionModes = [Microsoft.SqlServer.Management.Common.SqlExecutionModes]::CaptureSql
$srv.UserOptions.AnsiNulls = $TRUE
$srv.Alter()
foreach ($s in $srv.ConnectionContext.CapturedSql.Text)
{
Write-Host $s
}
$srv.ConnectionContext.ExecuteNonQuery($srv.ConnectionContext.CapturedSql.Text)
$srv.ConnectionContext.SqlExecutionModes = [Microsoft.SqlServer.Management.Common.SqlExecutionModes]::ExecuteSql
Vea también
Referencia
Espacio de nombres Microsoft.SqlServer.Management.Common