Méthode ServerConnection.ExecuteNonQuery (String)
Exécute une instruction qui ne retourne pas de jeu de résultats.
Espace de noms : Microsoft.SqlServer.Management.Common
Assembly : Microsoft.SqlServer.ConnectionInfo (en Microsoft.SqlServer.ConnectionInfo.dll)
Syntaxe
'Déclaration
Public Function ExecuteNonQuery ( _
sqlCommand As String _
) As Integer
'Utilisation
Dim instance As ServerConnection
Dim sqlCommand As String
Dim returnValue As Integer
returnValue = instance.ExecuteNonQuery(sqlCommand)
public int ExecuteNonQuery(
string sqlCommand
)
public:
int ExecuteNonQuery(
String^ sqlCommand
)
member ExecuteNonQuery :
sqlCommand:string -> int
public function ExecuteNonQuery(
sqlCommand : String
) : int
Paramètres
- sqlCommand
Type : String
Valeur String qui spécifie la commande Transact-SQL à exécuter.
Valeur de retour
Type : Int32
Valeur Int32 qui spécifie le nombre total de lignes affectées par la commande Transact-SQL pour les instructions UPDATE, INSERT et DELETE.Pour tous les autres types d'instructions, la valeur de retour est -1.
Notes
Commande à Transact-SQL est généralement une instruction ou une procédure stockée de du langage de définition de données (DDL) qui affectent les paramètres du serveur. La propriété d'Text de l'objet CapturedSql de peut être utilisée comme paramètre d'sqlCommand pour permettre l'exécution d'une instruction capturée d'Transact-SQL. Le paramètre d'sqlCommand contient une seule instruction à Transact-SQL.
Seuls les commandes SQLCMD sont identifiées par la méthode ExecuteNonQuery. Si le paramètre d'sqlCommand contient l'instruction qui n'est pas une instruction SQLCMD puis les erreurs de méthode et une exception d'ExecutionFailureException est déclenchée.
Exemples
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
Voir aussi
Référence
Espace de noms Microsoft.SqlServer.Management.Common