Aracılığıyla paylaş


SqlBatch Sınıf

Tanım

public ref class SqlBatch : System::Data::Common::DbBatch
public class SqlBatch : System.Data.Common.DbBatch
type SqlBatch = class
    inherit DbBatch
Public Class SqlBatch
Inherits DbBatch
Devralma
SqlBatch

Örnekler

Aşağıdaki örnek bir SqlConnection ve oluşturur ve SqlBatchardından toplu iş için birden çok SqlBatchCommand nesne ekler. Ardından toplu işlemi yürüterek bir SqlDataReaderoluşturur. Örnek, toplu iş komutlarının sonuçlarını okuyup konsola yazar. Son olarak, bloklar SqlDataReader kapsam dışında kaldığı için örnek ve SqlConnectionusing öğesini kapatır.

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));
    }
}

Oluşturucular

SqlBatch()

Yeni SqlBatchbir başlatır.

SqlBatch(SqlConnection, SqlTransaction)

Yeni SqlBatchbir başlatır.

Özellikler

BatchCommands

Bir içindeki toplu işlemde SqlBatchCommandCollectionyer alan komutların listesi.

Commands

Bir nesnedeki toplu işlemde IList yer alan komutların SqlBatchCommand listesi.

Connection

öğesinin SqlConnection bu örneği tarafından kullanılan öğesini SqlBatch alır veya ayarlar.

DbBatchCommands

Nesne koleksiyonunu SqlBatchCommand alır.

DbConnection

Bu SqlBatchtarafından kullanılan öğesini DbConnection alır veya ayarlar.

DbTransaction

Bu SqlBatch nesnenin SqlTransaction yürütüldiği nesneyi alır veya ayarlar.

Timeout

Toplu işlemi yürütme girişimini sonlandırmadan ve hata oluşturmadan önce bekleme süresini (saniye cinsinden) alır veya ayarlar.

Transaction

Komutların SqlTransaction yürütüldiği komutu SqlBatch alır veya ayarlar.

Yöntemler

Cancel()

yürütmesini SqlBatchiptal etmeye çalışır.

CreateDbBatchCommand()

Nesnenin yeni bir SqlBatchCommand örneğini oluşturur.

Dispose()

Uygulama tarafından tanımlanan, yönetilmeyen kaynakları serbest bırakma, salma veya sıfırlama ile ilişkili görevleri gerçekleştirir.

ExecuteDbDataReader(CommandBehavior)

Toplu işlemi bağlantısına göre yürütür ve sonuçlara erişmek için kullanılabilecek bir SqlDataReader döndürür.

ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken)

Bu uygulama yöntemini çağırır ExecuteReaderAsync() ve tamamlanmış bir görev döndürür. Varsayılan uygulama, zaten iptal edilmiş bir iptal belirtecinden geçildiyse iptal edilmiş bir görev döndürür.

Bu yöntem, işlemin erken iptal edilmesi isteğinde bulunmak için kullanılabilecek bir iptal belirteci kabul eder.

ExecuteNonQuery()

Toplu işlemi bağlantı nesnesine karşı yürütür ve tüm toplu iş komutlarında etkilenen toplam satır sayısını döndürür.

ExecuteNonQueryAsync(CancellationToken)

Bu, zaman uyumsuz sürümüdür ExecuteNonQuery().

Uygulama yöntemini çağırır ExecuteNonQueryAsync(CancellationToken) ve tamamlanmış bir görev döndürür. Varsayılan uygulama, zaten iptal edilmiş bir iptal belirtecinden geçildiyse iptal edilmiş bir görev döndürür.

Döndürülen Görev tamamlanana kadar nesnenin DbCommand diğer yöntemlerini ve özelliklerini çağırmayın.

ExecuteReader()

öğesine CommandsConnection gönderir ve bir SqlDataReader oluşturur.

ExecuteReaderAsync(CancellationToken)

öğesine gönderen Commands ve bir oluşturan zaman uyumsuz sürümü ExecuteReader()SqlDataReader.Connection Özel durumlar döndürülen Görev nesnesi ile bildirilir.

ExecuteScalar()

Toplu işlemi yürütür ve döndürülen ilk sonuç kümesindeki ilk satırın ilk sütununu döndürür. Diğer tüm sütunlar, satırlar ve sonuç kümeleri yoksayılır.

ExecuteScalarAsync(CancellationToken)

Toplu işlemi yürüten ve döndürülen ilk sonuç kümesindeki ilk satırın ilk sütununu döndüren zaman uyumsuz sürümü ExecuteScalar(). Diğer tüm sütunlar, satırlar ve sonuç kümeleri yoksayılır.

Prepare()

Veri kaynağında toplu iş veya komutlarının her birinin hazırlanmış (veya derlenmiş) bir sürümünü oluşturur.

PrepareAsync(CancellationToken)

Veri kaynağında toplu iş veya komutlarının her birinin hazırlanmış (veya derlenmiş) bir sürümünü zaman uyumsuz olarak oluşturur.

Şunlara uygulanır