ServerConnection.ExecuteNonQuery Method (String)

Executes a statement that does not return a result set.

Namespace: Microsoft.SqlServer.Management.Common
Assembly: Microsoft.SqlServer.ConnectionInfo (in microsoft.sqlserver.connectioninfo.dll)

Syntax

'Declaration
Public Function ExecuteNonQuery ( _
    sqlCommand As String _
) As Integer
public int ExecuteNonQuery (
    string sqlCommand
)
public:
int ExecuteNonQuery (
    String^ sqlCommand
)
public int ExecuteNonQuery (
    String sqlCommand
)
public function ExecuteNonQuery (
    sqlCommand : String
) : int

Parameters

  • sqlCommand
    A String value that specifies the Transact-SQL command to be executed.

Return Value

An Int32 value that specifies the total number of rows affected by the Transact-SQL command for UPDATE, INSERT, and DELETE statements. For all other types of statements, the return value is -1.

Remarks

The Transact-SQL command is typically a data definition language (DDL) statement or stored procedure that affects the server settings. The Text property of the CapturedSql object can be used as the sqlCommand parameter to allow execution of a captured Transact-SQL statement. The sqlCommand parameter contains a single Transact-SQL statement.

Only SQLCMD commands are recognized by the ExecuteNonQuery method. If the sqlCommand parameter contains a statement that is not a SQLCMD command then the method fails and an ExecutionFailureException exception is raised.

This namespace, class, or member is supported only in version 2.0 of the Microsoft .NET Framework.

Example

'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

Thread Safety

Any public static (Shared in Microsoft Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.

Target Platforms

For a list of the supported platforms, see Hardware and Software Requirements for Installing SQL Server 2005.

See Also

Reference

ServerConnection Class
ServerConnection Members
Microsoft.SqlServer.Management.Common Namespace

Other Resources

How to: Enable Capture Mode in Visual Basic .NET
Using Capture Mode