SqlBatch Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
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
- Dědičnost
-
SqlBatch
Příklady
Následující příklad vytvoří SqlConnection a a SqlBatchpak přidá do dávky více SqlBatchCommand objektů. Potom dávku spustí a vytvoří SqlDataReader. Příklad přečte výsledky dávkových příkazů a zapíše je do konzoly nástroje . Nakonec příklad uzavře SqlDataReader a pak, protože SqlConnectionusing
bloky spadají mimo rozsah.
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));
}
}
Konstruktory
SqlBatch() |
Inicializuje nový SqlBatch. |
SqlBatch(SqlConnection, SqlTransaction) |
Inicializuje nový SqlBatch. |
Vlastnosti
BatchCommands |
Seznam příkazů obsažených v dávce v objektu SqlBatchCommandCollection. |
Commands |
Seznam příkazů obsažených v dávce v objektech IListSqlBatchCommand . |
Connection |
Získá nebo nastaví SqlConnection používaná touto instancí objektu SqlBatch . |
DbBatchCommands |
Získá kolekci SqlBatchCommand objektů. |
DbConnection |
Získá nebo nastaví DbConnection používaná tímto SqlBatchobjektem . |
DbTransaction |
Získá nebo nastaví, SqlTransaction v rámci kterého se tento SqlBatch objekt spustí. |
Timeout |
Získá nebo nastaví čekací dobu (v sekundách) před ukončením pokusu o spuštění dávky a generování chyby. |
Transaction |
Získá nebo nastaví, SqlTransaction v rámci kterého se SqlBatch příkazy spustí. |
Metody
Cancel() |
Pokusí se zrušit spuštění .SqlBatch |
CreateDbBatchCommand() |
Vytvoří novou instanci objektu SqlBatchCommand . |
Dispose() |
Provede aplikací definované úlohy spojené s uvolněním nebo resetováním nespravovaných prostředků. |
ExecuteDbDataReader(CommandBehavior) |
Spustí dávku proti svému připojení a vrátí , SqlDataReader který lze použít pro přístup k výsledkům. |
ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken) |
Tato implementace vyvolá metodu ExecuteReaderAsync() a vrátí dokončenou úlohu. Výchozí implementace vrátí zrušenou úlohu, pokud je předán již zrušený token zrušení. Tato metoda přijímá token zrušení, který lze použít k žádosti o předčasné zrušení operace. |
ExecuteNonQuery() |
Spustí dávku proti objektu připojení a vrátí celkový počet ovlivněných řádků ve všech dávkových příkazech. |
ExecuteNonQueryAsync(CancellationToken) |
Toto je asynchronní verze nástroje ExecuteNonQuery(). Implementace vyvolá metodu ExecuteNonQueryAsync(CancellationToken) a vrátí dokončenou úlohu. Výchozí implementace vrátí zrušenou úlohu, pokud je předán již zrušený token zrušení. Nevyvolávej jiné metody a vlastnosti objektu |
ExecuteReader() |
Odešle do Commands a Connection vytvoří SqlDataReader . |
ExecuteReaderAsync(CancellationToken) |
Asynchronní verze nástroje ExecuteReader() , která odešle Commands do Connection a vytvoří SqlDataReader. Výjimky budou hlášeny prostřednictvím vráceného objektu Task. |
ExecuteScalar() |
Spustí dávku a vrátí první sloupec prvního řádku v první vrácené sadě výsledků dotazu. Všechny ostatní sloupce, řádky a sady výsledků se ignorují. |
ExecuteScalarAsync(CancellationToken) |
Asynchronní verze nástroje ExecuteScalar(), která spustí dávku a vrátí první sloupec prvního řádku v první vrácené sadě výsledků. Všechny ostatní sloupce, řádky a sady výsledků se ignorují. |
Prepare() |
Vytvoří připravenou (nebo zkompilovanou) verzi dávky nebo každého z jejích příkazů ve zdroji dat. |
PrepareAsync(CancellationToken) |
Asynchronně vytvoří připravenou (nebo zkompilovanou) verzi dávky nebo každého z jejích příkazů ve zdroji dat. |