SqlBatch Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
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
- Ereditarietà
-
SqlBatch
- Ereditarietà
-
SqlBatch
- Implementazioni
Esempio
Nell'esempio seguente viene creato un SqlConnection oggetto e un SqlBatchoggetto , quindi vengono aggiunti più SqlBatchCommand oggetti al batch. Esegue quindi il batch, creando un oggetto SqlDataReader. L'esempio legge i risultati dei comandi batch, scrivendoli nella console. Infine, l'esempio chiude SqlDataReader e quindi quando SqlConnection i using blocchi non rientrano nell'ambito.
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));
}
}
Nell'esempio seguente viene creato un SqlConnection oggetto e un SqlBatchoggetto , quindi vengono aggiunti più SqlBatchCommand oggetti al batch. Esegue quindi il batch, creando un oggetto SqlDataReader. L'esempio legge i risultati dei comandi batch, scrivendoli nella console. Infine, l'esempio chiude SqlDataReader e quindi quando SqlConnection i using blocchi non rientrano nell'ambito.
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));
}
}
Costruttori
| Nome | Descrizione |
|---|---|
| SqlBatch() |
Inizializza un nuovo SqlBatchoggetto . |
| SqlBatch(SqlConnection, SqlTransaction) |
Inizializza un nuovo SqlBatchoggetto . |
Proprietà
| Nome | Descrizione |
|---|---|
| BatchCommands |
Elenco di comandi contenuti nel batch in un oggetto SqlBatchCommandCollection. |
| Commands |
Elenco di SqlBatchCommand contenuto nel batch in un oggetto List<T>. |
| Connection |
Ottiene o imposta l'oggetto SqlConnection utilizzato da questa istanza di SqlBatch. |
| DbBatchCommands |
Ottiene la raccolta di SqlBatchCommand oggetti . |
| DbConnection |
Ottiene o imposta l'oggetto DbConnection utilizzato da questo SqlBatchoggetto . |
| DbTransaction |
Ottiene o imposta l'oggetto all'interno del quale viene eseguito l'oggetto SqlTransactionSqlBatch . |
| Timeout |
Ottiene o imposta il tempo di attesa , espresso in secondi, prima di terminare il tentativo di eseguire il batch e generare un errore. |
| Transaction |
Ottiene o imposta l'oggetto all'interno del SqlTransaction quale vengono eseguiti i SqlBatch comandi. |
Metodi
| Nome | Descrizione |
|---|---|
| Cancel() |
Tenta di annullare l'esecuzione di un oggetto SqlBatch. |
| CreateDbBatchCommand() |
Crea una nuova istanza di un SqlBatchCommand oggetto . |
| Dispose() |
Esegue attività definite dall'applicazione associate alla liberazione, al rilascio o alla reimpostazione di risorse non gestite. |
| DisposeAsync() | Esegue attività definite dall'applicazione associate alla liberazione, al rilascio o alla reimpostazione asincrona delle risorse non gestite. |
| ExecuteDbDataReader(CommandBehavior) |
Esegue il batch sulla connessione, restituendo un oggetto SqlDataReader che può essere usato per accedere ai risultati. |
| ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken) |
Questa implementazione richiama il ExecuteReaderAsync() metodo e restituisce un'attività completata. L'implementazione predefinita restituirà un'attività annullata se è stato passato un token di annullamento già annullato. Questo metodo accetta un token di annullamento che può essere usato per richiedere l'annullamento anticipato dell'operazione. |
| ExecuteNonQuery() |
Esegue il batch sul relativo oggetto connessione, restituendo il numero totale di righe interessate in tutti i comandi batch. |
| ExecuteNonQueryAsync(CancellationToken) |
Si tratta della versione asincrona di ExecuteNonQuery().
L'implementazione richiama il ExecuteNonQueryAsync(CancellationToken) metodo e restituisce un'attività completata. L'implementazione predefinita restituirà un'attività annullata se è stato passato un token di annullamento già annullato.
Non richiamare altri metodi e proprietà dell'oggetto |
| ExecuteReader() |
Invia all'oggetto CommandsConnection e compila un oggetto SqlDataReader. |
| ExecuteReader(CommandBehavior) |
Invia all'oggetto CommandsConnection e compila un oggetto SqlDataReader. |
| ExecuteReaderAsync(CancellationToken) |
Versione asincrona di ExecuteReader(), che invia all'oggetto CommandsConnection e compila un oggetto SqlDataReader. Le eccezioni verranno segnalate tramite l'oggetto Task restituito. |
| ExecuteReaderAsync(CommandBehavior, CancellationToken) |
Versione asincrona di ExecuteReader(), che invia all'oggetto CommandsConnection e compila un oggetto SqlDataReader. Le eccezioni verranno segnalate tramite l'oggetto Task restituito. |
| ExecuteScalar() |
Esegue il batch e restituisce la prima colonna della prima riga nel primo set di risultati restituito. Tutte le altre colonne, righe e set di risultati vengono ignorate. |
| ExecuteScalarAsync(CancellationToken) |
Versione asincrona di ExecuteScalar(), che esegue il batch e restituisce la prima colonna della prima riga nel primo set di risultati restituito. Tutte le altre colonne, righe e set di risultati vengono ignorate. |
| Prepare() |
Crea una versione preparata (o compilata) del batch o di ognuno dei relativi comandi nell'origine dati. |
| PrepareAsync(CancellationToken) |
Crea in modo asincrono una versione preparata (o compilata) del batch o di ognuno dei relativi comandi nell'origine dati. |