SqlCommand.ExecuteNonQuery Méthode

Définition

Exécute une instruction Transact-SQL sur la connexion et retourne le nombre de lignes affectées.

public:
 virtual int ExecuteNonQuery();
public:
 override int ExecuteNonQuery();
public int ExecuteNonQuery();
public override int ExecuteNonQuery();
abstract member ExecuteNonQuery : unit -> int
override this.ExecuteNonQuery : unit -> int
override this.ExecuteNonQuery : unit -> int
Public Function ExecuteNonQuery () As Integer
Public Overrides Function ExecuteNonQuery () As Integer

Retours

Nombre de lignes affectées.

Implémente

Exceptions

Un SqlDbType autre que Binary ou VarBinary a été utilisé quand Value il a été défini sur Stream. Pour plus d’informations sur la diffusion en continu, consultez Prise en charge de la diffusion en continu SqlClient.

-ou-

Un SqlDbType autre que Char, NChar, NVarChar, VarChar ou Xml a été utilisé quand Value il a été défini sur TextReader.

-ou-

Un SqlDbType autre que Xml a été utilisé lorsqu’il Value a été défini sur XmlReader.

Une exception s’est produite lors de l’exécution de la commande sur une ligne verrouillée. Cette exception n’est pas générée lorsque vous utilisez Microsoft .NET Framework version 1.0.

-ou-

Un délai d’expiration s’est produit pendant une opération de diffusion en continu. Pour plus d’informations sur la diffusion en continu, consultez Prise en charge de la diffusion en continu SqlClient.

Une erreur s’est produite dans un objet ou StreamXmlReader un TextReaderobjet pendant une opération de diffusion en continu. Pour plus d’informations sur la diffusion en continu, consultez Prise en charge de la diffusion en continu SqlClient.

SqlConnection Fermé ou supprimé pendant une opération de diffusion en continu. Pour plus d’informations sur la diffusion en continu, consultez Prise en charge de la diffusion en continu SqlClient.

L’objet ou Stream l’objet XmlReaderTextReader a été fermé pendant une opération de diffusion en continu. Pour plus d’informations sur la diffusion en continu, consultez Prise en charge de la diffusion en continu SqlClient.

Exemples

L’exemple suivant crée un SqlCommand élément, puis l’exécute à l’aide ExecuteNonQueryde . L’exemple est passé une chaîne qui est une instruction Transact-SQL (telle que UPDATE, INSERT ou DELETE) et une chaîne à utiliser pour se connecter à la source de données.

private static void CreateCommand(string queryString,
    string connectionString)
{
    using (SqlConnection connection = new SqlConnection(
               connectionString))
    {
        SqlCommand command = new SqlCommand(queryString, connection);
        command.Connection.Open();
        command.ExecuteNonQuery();
    }
}
Public Sub CreateCommand(ByVal queryString As String, _
  ByVal connectionString As String)
    Using connection As New SqlConnection(connectionString)
        Dim command As New SqlCommand(queryString, connection)
        command.Connection.Open()
        command.ExecuteNonQuery()
    End Using
End Sub

Remarques

Vous pouvez utiliser les ExecuteNonQuery opérations de catalogue (par exemple, interroger la structure d’une base de données ou créer des objets de base de données tels que des tables) ou modifier les données d’une base de données sans utiliser d’instructions DataSet UPDATE, INSERT ou DELETE.

Bien que les ExecuteNonQuery retours ne renvoient aucune ligne, tous les paramètres de sortie ou valeurs renvoyées mappés aux paramètres sont renseignés avec des données.

Pour les instructions UPDATE, INSERT et DELETE, la valeur de retour est le nombre de lignes affectées par la commande. Pour tous les autres types d’instructions, la valeur de retour est -1.

Lorsqu’un déclencheur existe sur une table insérée ou mise à jour, la valeur de retour inclut le nombre de lignes affectées par l’opération d’insertion ou de mise à jour et le nombre de lignes affectées par le déclencheur ou les déclencheurs.

Lorsque SET NOCOUNT ON est défini sur la connexion (avant ou dans le cadre de l’exécution de la commande, ou dans le cadre d’un déclencheur lancé par l’exécution de la commande), les lignes affectées par des instructions individuelles arrêtent de contribuer au nombre de lignes affectées par cette méthode.

Si aucune instruction n’est détectée qui contribue au nombre, la valeur de retour est -1. Si une restauration se produit, la valeur de retour est également -1.

S’applique à

Voir aussi