0 sur 1 ont trouvé cela utile - Évaluez ce sujet

SqlCommand, classe

Mise à jour : novembre 2007

Représente une instruction Transact-SQL ou une procédure stockée à exécuter par rapport à une base de données SQL Server. Cette classe ne peut pas être héritée.

Espace de noms :  System.Data.SqlClient
Assembly :  System.Data (dans System.Data.dll)

public sealed class SqlCommand : DbCommand, 
	ICloneable
public final class SqlCommand extends DbCommand implements ICloneable
public final class SqlCommand extends DbCommand implements ICloneable

Lorsqu'une instance de SqlCommand est créée, les propriétés de lecture/écriture prennent leurs valeurs initiales. Pour obtenir la liste de ces valeurs, consultez le constructeur SqlCommand.

SqlCommand met en œuvre les méthodes suivantes pour l'exécution de commandes au niveau d'une base de données SQL Server :

Élément

Description

BeginExecuteNonQuery

Lance l'exécution asynchrone de l'instruction Transact-SQL ou de la procédure stockée qui est décrite par cet SqlCommand, en exécutant généralement des commandes, telles que des instructions INSERT, DELETE, UPDATE et SET. Chaque appel à BeginExecuteNonQuery doit être associé à un appel à EndExecuteNonQuery, ce qui termine l'opération, normalement sur un thread séparé.

BeginExecuteReader

Lance l'exécution asynchrone de l'instruction Transact-SQL ou de la procédure stockée qui est décrite par cet SqlCommand et récupère un ou plusieurs jeux de résultats du serveur. Chaque appel à BeginExecuteReader doit être associé à un appel à EndExecuteReader, ce qui termine l'opération, normalement sur un thread séparé.

BeginExecuteXmlReader

Lance l'exécution asynchrone de l'instruction Transact-SQL ou de la procédure stockée qui est décrite par cet SqlCommand. Chaque appel à BeginExecuteXmlReader doit être associé à un appel à EndExecuteXmlReader, ce qui termine l'opération, normalement sur un thread séparé, puis retourne un objet XmlReader.

ExecuteReader

Exécute des commandes qui retournent des lignes. Afin d'améliorer les performances, ExecuteReader appelle des commandes à l'aide de la procédure stockée système Transact-SQL sp_executesql. Par conséquent, il se peut que ExecuteReader n'ait pas l'effet souhaité s'il est utilisé pour exécuter des commandes, telles que des instructions Transact-SQL SET.

ExecuteNonQuery

Exécute des commandes, telles que des instructions Transact-SQL INSERT, DELETE, UPDATE et SET.

ExecuteScalar

Récupère une valeur unique (par exemple, une valeur d'agrégation) d'une base de données.

ExecuteXmlReader

Envoie CommandText à Connection et génère un objet XmlReader.

Vous pouvez réinitialiser la propriété CommandText et réutiliser l'objet SqlCommand. Cependant, vous devez fermer le SqlDataReader avant d'exécuter une commande nouvelle ou précédente.

En cas de génération de SqlException par la méthode exécutant SqlCommand, SqlConnection reste ouvert lorsque le niveau de gravité est inférieur ou égal à 19. Lorsque le niveau de gravité est supérieur ou égal à 20, le serveur ferme normalement SqlConnection. L'utilisateur peut toutefois rouvrir la connexion et continuer.

L'exemple suivant crée un SqlConnection, un SqlCommand et un SqlDataReader. L'exemple lit les données, en les écrivant dans la console. Enfin,, l'exemple ferme SqlDataReader, puis SqlConnection.

private static void ReadOrderData(string connectionString)
{
    string queryString = 
        "SELECT OrderID, CustomerID FROM dbo.Orders;";
    using (SqlConnection connection = new SqlConnection(
               connectionString))
    {
        SqlCommand command = new SqlCommand(
            queryString, connection);
        connection.Open();
        SqlDataReader reader = command.ExecuteReader();
        try
        {
            while (reader.Read())
            {
                Console.WriteLine(String.Format("{0}, {1}",
                    reader[0], reader[1]));
            }
        }
        finally
        {
            // Always call Close when done reading.
            reader.Close();
        }
    }
}


Tous les membres static (Shared en Visual Basic) publics de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professionnel Édition x64, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile pour Smartphone, Windows Mobile pour Pocket PC

Le .NET Framework et le .NET Compact Framework ne prennent pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

.NET Framework

Pris en charge dans : 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Pris en charge dans : 3.5, 2.0, 1.0
Cela vous a-t-il été utile ?
(1500 caractères restants)
Contenu de la communauté Ajouter
Annotations FAQ