ServerConnection.ExecuteNonQuery 메서드 (String)

Executes a statement that does not return a result set.

네임스페이스:  Microsoft.SqlServer.Management.Common
어셈블리:  Microsoft.SqlServer.ConnectionInfo(Microsoft.SqlServer.ConnectionInfo.dll)


Public Function ExecuteNonQuery ( _
    sqlCommand As String _
) As Integer
‘사용 방법
Dim instance As ServerConnection 
Dim sqlCommand As String 
Dim returnValue As Integer 

returnValue = instance.ExecuteNonQuery(sqlCommand)
public int ExecuteNonQuery(
    string sqlCommand
int ExecuteNonQuery(
    String^ sqlCommand
member ExecuteNonQuery : 
        sqlCommand:string -> int
public function ExecuteNonQuery(
    sqlCommand : String
) : int

매개 변수

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

반환 값

유형: System.Int32
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.


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.


'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
'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
'Execute the captured statements.
'Revert to immediate execution mode. 
srv.ConnectionContext.SqlExecutionModes = SqlExecutionModes.ExecuteSql


$srv = new-object Microsoft.SqlServer.Management.Smo.Server
$srv.ConnectionContext.SqlExecutionModes = [Microsoft.SqlServer.Management.Common.SqlExecutionModes]::CaptureSql
$srv.UserOptions.AnsiNulls = $TRUE
foreach ($s in $srv.ConnectionContext.CapturedSql.Text)
   Write-Host $s
$srv.ConnectionContext.SqlExecutionModes = [Microsoft.SqlServer.Management.Common.SqlExecutionModes]::ExecuteSql

참고 항목


ServerConnection 클래스

ExecuteNonQuery 오버로드

Microsoft.SqlServer.Management.Common 네임스페이스

관련 자료

캡처 모드 사용