SqlBatch Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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
- Vererbung
-
SqlBatch
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));
}
}
Konstruktoren
SqlBatch() |
Initialisiert eine neue SqlBatch. |
SqlBatch(SqlConnection, SqlTransaction) |
Initialisiert eine neue SqlBatch. |
Eigenschaften
BatchCommands |
Die Liste der Befehle, die im Batch in einem SqlBatchCommandCollectionenthalten sind. |
Commands |
Die Liste der Befehle, die im Batch in einem IList von SqlBatchCommand -Objekten enthalten sind. |
Connection |
Ruft die SqlConnection von diesem instance des ab oder legt diesen SqlBatch fest. |
DbBatchCommands |
Ruft die Auflistung von SqlBatchCommand-Objekten ab. |
DbConnection |
Ruft die von diesem DbConnection verwendete SqlBatch ab oder legt diese fest. |
DbTransaction |
Ruft die SqlTransaction ab, in der dieses SqlBatch-Objekt ausgeführt wird, oder legt sie fest. |
Timeout |
Ruft die Wartezeit (in Sekunden) ab, bevor der Versuch, den Batch auszuführen, beendet und ein Fehler generiert wird, oder legt diese fest. |
Transaction |
Ruft den ab, in dem SqlTransaction die Befehle ausgeführt werden, oder legt diesen SqlBatch fest. |
Methoden
Cancel() |
Versucht, die Ausführung eines SqlBatchabzubrechen. |
CreateDbBatchCommand() |
Erstellt eine neue Instanz eines SqlBatchCommand-Objekts. |
Dispose() |
Führt anwendungsspezifische Aufgaben durch, die mit der Freigabe, der Zurückgabe oder dem Zurücksetzen von nicht verwalteten Ressourcen zusammenhängen. |
ExecuteDbDataReader(CommandBehavior) |
Führt den Batch für seine Verbindung aus und gibt eine SqlDataReader zurück, die für den Zugriff auf die Ergebnisse verwendet werden kann. |
ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken) |
Diese Implementierung ruft die ExecuteReaderAsync() -Methode auf und gibt eine abgeschlossene Aufgabe zurück. Die Standardimplementierung gibt eine abgebrochene Aufgabe zurück, wenn sie einen bereits abgebrochenen Abbruchtoken erhalten hat. Diese Methode nimmt ein Abbruchtoken an, das verwendet werden kann, um ein frühes Abbrechen des Vorgangs anzufordern. |
ExecuteNonQuery() |
Führt den Batch für sein Verbindungsobjekt aus, und gibt die Gesamtzahl der betroffenen Zeilen für alle Batchbefehle zurück. |
ExecuteNonQueryAsync(CancellationToken) |
Dies ist die asynchrone Version von ExecuteNonQuery(). Die Implementierung ruft die ExecuteNonQueryAsync(CancellationToken) -Methode auf und gibt eine abgeschlossene Aufgabe zurück. Die Standardimplementierung gibt eine abgebrochene Aufgabe zurück, wenn sie einen bereits abgebrochenen Abbruchtoken erhalten hat. Rufen Sie keine anderen Methoden und Eigenschaften des |
ExecuteReader() |
Sendet die Commands an die Connection und erstellt ein SqlDataReader . |
ExecuteReaderAsync(CancellationToken) |
Eine asynchrone Version von ExecuteReader() , die an die ConnectionCommands sendet und eine SqlDataReadererstellt. Ausnahmen werden über das zurückgegebene Aufgabenobjekt gemeldet. |
ExecuteScalar() |
Führt den Batch aus und gibt die erste Spalte der ersten Zeile im ersten zurückgegebenen Resultset zurück. Alle anderen Spalten, Zeilen und Resultsets werden ignoriert. |
ExecuteScalarAsync(CancellationToken) |
Eine asynchrone Version von ExecuteScalar(), die den Batch ausführt und die erste Spalte der ersten Zeile im ersten zurückgegebenen Resultset zurückgibt. Alle anderen Spalten, Zeilen und Resultsets werden ignoriert. |
Prepare() |
Erstellt eine vorbereitete (oder kompilierte) Version des Batches oder der einzelnen Befehle für die Datenquelle. |
PrepareAsync(CancellationToken) |
Erstellt asynchron eine vorbereitete (oder kompilierte) Version des Batches oder der einzelnen Befehle für die Datenquelle. |