SqlBatch Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
public ref class SqlBatch : IAsyncDisposable, IDisposable
public ref class SqlBatch : System::Data::Common::DbBatch
public class SqlBatch : IAsyncDisposable, IDisposable
public class SqlBatch : System.Data.Common.DbBatch
type SqlBatch = class
interface IDisposable
interface IAsyncDisposable
type SqlBatch = class
inherit DbBatch
Public Class SqlBatch
Implements IAsyncDisposable, IDisposable
Public Class SqlBatch
Inherits DbBatch
- Наследование
-
SqlBatch
- Наследование
-
SqlBatch
- Реализации
Примеры
В следующем примере создается и a SqlConnectionSqlBatch, а затем добавляется несколько SqlBatchCommand объектов в пакет. Затем он выполняет пакет, создав пакет SqlDataReader. Пример считывает результаты пакетных команд, записывая их в консоль. Наконец, в примере закрывается SqlDataReader , а затем SqlConnectionusing блоки выходят из области.
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();
using 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);
}
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));
}
}
В следующем примере создается и a SqlConnectionSqlBatch, а затем добавляется несколько SqlBatchCommand объектов в пакет. Затем он выполняет пакет, создав пакет SqlDataReader. Пример считывает результаты пакетных команд, записывая их в консоль. Наконец, в примере закрывается SqlDataReader , а затем SqlConnectionusing блоки выходят из области.
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();
using 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);
}
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));
}
}
Конструкторы
| Имя. | Описание |
|---|---|
| SqlBatch() |
Инициализирует новый SqlBatch. |
| SqlBatch(SqlConnection, SqlTransaction) |
Инициализирует новый SqlBatch. |
Свойства
| Имя. | Описание |
|---|---|
| BatchCommands |
Список команд, содержащихся в пакете в объекте SqlBatchCommandCollection. |
| Commands |
Список SqlBatchCommand , содержащийся в пакете в объекте List<T>. |
| Connection |
Возвращает или задает используемый SqlConnection этим экземпляром экземпляра SqlBatch. |
| DbBatchCommands |
Получает коллекцию SqlBatchCommand объектов. |
| DbConnection |
Возвращает или задает используемый DbConnection этим SqlBatchпараметром. |
| DbTransaction |
Возвращает или задает объект SqlTransaction , в котором выполняется этот SqlBatch объект. |
| Timeout |
Возвращает или задает время ожидания (в секундах), прежде чем завершать попытку выполнить пакет и создать ошибку. |
| Transaction |
Возвращает или задает объект SqlTransaction , в котором SqlBatch выполняются команды. |
Методы
| Имя. | Описание |
|---|---|
| Cancel() |
Пытается отменить выполнение объекта SqlBatch. |
| CreateDbBatchCommand() |
Создает новый экземпляр SqlBatchCommand объекта. |
| Dispose() |
Выполняет определяемые приложением задачи, связанные с освобождением, освобождением или сбросом неуправляемых ресурсов. |
| DisposeAsync() | Выполняет определяемые приложением задачи, связанные с освобождением, освобождением или асинхронным сбросом неуправляемых ресурсов. |
| ExecuteDbDataReader(CommandBehavior) |
Выполняет пакет с его подключением, возвращая SqlDataReader объект, который можно использовать для доступа к результатам. |
| ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken) |
Эта реализация вызывает ExecuteReaderAsync() метод и возвращает завершенную задачу. Реализация по умолчанию возвращает отмененную задачу при передаче уже отмененного маркера отмены. Этот метод принимает маркер отмены, который можно использовать для запроса на отмену операции раньше. |
| ExecuteNonQuery() |
Выполняет пакет для объекта подключения, возвращая общее количество строк, затронутых во всех командах пакетной службы. |
| ExecuteNonQueryAsync(CancellationToken) |
Это асинхронная версия ExecuteNonQuery().
Реализация вызывает ExecuteNonQueryAsync(CancellationToken) метод и возвращает завершенную задачу. Реализация по умолчанию возвращает отмененную задачу при передаче уже отмененного маркера отмены.
Не вызывайте другие методы и свойства |
| ExecuteReader() |
Отправляет объект CommandsConnection в и создает объект SqlDataReader. |
| ExecuteReader(CommandBehavior) |
Отправляет объект CommandsConnection в и создает объект SqlDataReader. |
| ExecuteReaderAsync(CancellationToken) |
Асинхронная версияExecuteReader(), которая отправляет объект Commands в и создает Connection объектSqlDataReader. Исключения будут сообщаться с помощью возвращаемого объекта Task. |
| ExecuteReaderAsync(CommandBehavior, CancellationToken) |
Асинхронная версияExecuteReader(), которая отправляет объект Commands в и создает Connection объектSqlDataReader. Исключения будут сообщаться с помощью возвращаемого объекта Task. |
| ExecuteScalar() |
Выполняет пакет и возвращает первый столбец первой строки в первом возвращаемом результирующем наборе. Все остальные столбцы, строки и наборы результатов игнорируются. |
| ExecuteScalarAsync(CancellationToken) |
Асинхронная версия ExecuteScalar(), которая выполняет пакет и возвращает первый столбец первой строки в первом возвращаемом результирующем наборе. Все остальные столбцы, строки и результирующие наборы игнорируются. |
| Prepare() |
Создает подготовленную (или скомпилированную) версию пакета или каждой из ее команд в источнике данных. |
| PrepareAsync(CancellationToken) |
Асинхронно создает подготовленную (или скомпилированную) версию пакета или каждую из ее команд в источнике данных. |