Метод ServerConnection.ExecuteNonQuery (String, ExecutionTypes)
Выполняет инструкцию с заданными параметрами выполнения, которая не возвращает результирующего набора.
Пространство имен: Microsoft.SqlServer.Management.Common
Сборка: Microsoft.SqlServer.ConnectionInfo (в Microsoft.SqlServer.ConnectionInfo.dll)
Синтаксис
'Декларация
Public Function ExecuteNonQuery ( _
sqlCommand As String, _
executionType As ExecutionTypes _
) As Integer
'Применение
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
Параметры
- sqlCommand
Тип: String
Значение типа String, указывающее выполняемую команду Transact-SQL.
- executionType
Тип: Microsoft.SqlServer.Management.Common.ExecutionTypes
Значение объекта ExecutionTypes, указывающее параметры инструкции Transact-SQL.
Возвращаемое значение
Тип: Int32
Значение типа Int32, указывающее общее число строк, обработанных командой Transact-SQL для инструкций UPDATE, INSERT и DELETE.Возвращаемое значение для всех остальных типов инструкций равно -1.
Замечания
Обычно инструкции языка Transact-SQL или хранимой процедуры (DDL) языка описания данных DDL, влияющие на параметры сервера. Свойство Text объекта CapturedSql можно использовать в качестве параметра sqlCommand, чтобы разрешить выполнение записанной инструкции Transact-SQL. Параметр sqlCommand содержит одну инструкцию Transact-SQL.
Только команды SQLCMD методом ExecuteNonQuery. Если параметр sqlCommand содержит инструкцию, которая не является команды SQLCMD, затем завершается неудачей и метода ExecutionFailureException возникает исключение, если параметр executionType не задан, если значение ExecutionTypes.ContinueOnError.
Примеры
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
См. также
Справочник
Пространство имен Microsoft.SqlServer.Management.Common