Freigeben über


SqlBatch.BatchCommands Eigenschaft

Definition

Die Liste der Befehle, die im Batch in einem SqlBatchCommandCollectionenthalten sind.

public:
 property Microsoft::Data::SqlClient::SqlBatchCommandCollection ^ BatchCommands { Microsoft::Data::SqlClient::SqlBatchCommandCollection ^ get(); };
public Microsoft.Data.SqlClient.SqlBatchCommandCollection BatchCommands { get; }
member this.BatchCommands : Microsoft.Data.SqlClient.SqlBatchCommandCollection
Public ReadOnly Property BatchCommands As SqlBatchCommandCollection

Eigenschaftswert

Beispiele

Im folgenden Beispiel werden ein SqlConnection und ein SqlBatcherstellt. Anschließend werden dem Batch mehrere SqlBatchCommand Objekte hinzugefügt. Anschließend wird der Batch ausgeführt und ein SqlDataReadererstellt. Im Beispiel werden die Ergebnisse der Batchbefehle gelesen und in die Konsole geschrieben. Schließlich schließt das Beispiel den SqlDataReader und dann, als die SqlConnection Blöcke aus dem using Bereich fallen.

using Microsoft.Data.SqlClient;

class Program
{
    static void Main()
    {
        string str = "Data Source=(local);Initial Catalog=Northwind;"
        + "Integrated Security=SSPI;Encrypt=False";
        RunBatch(str);
    }

    static void RunBatch(string connString)
    {
        using var connection = new SqlConnection(connString);
        connection.Open();

        var batch = new SqlBatch(connection);

        const int count = 10;
        const string parameterName = "parameter";
        for (int i = 0; i < count; i++)
        {
            var batchCommand = new SqlBatchCommand($"SELECT @{parameterName} as value");
            batchCommand.Parameters.Add(new SqlParameter(parameterName, i));
            batch.BatchCommands.Add(batchCommand);
        }

        // Optionally Prepare
        batch.Prepare();

        var results = new List<int>(count);
        using (SqlDataReader reader = batch.ExecuteReader())
        {
            do
            {
                while (reader.Read())
                {
                    results.Add(reader.GetFieldValue<int>(0));
                }
            } while (reader.NextResult());
        }
        Console.WriteLine(string.Join(", ", results));
    }
}

Gilt für: