Lingua

SqlDataRecord Classe

Definizione

Rappresenta una singola riga di dati e i relativi metadati.

public ref class SqlDataRecord : System::Data::IDataRecord
public class SqlDataRecord : System.Data.IDataRecord
type SqlDataRecord = class
    interface IDataRecord
Public Class SqlDataRecord
Implements IDataRecord
Ereditarietà
SqlDataRecord
Implementazioni

Esempio

Nell'esempio seguente viene illustrato come creare diversi SqlMetaData oggetti che descrivono i metadati della colonna di un record, quindi creare un'istanza utilizzabile SqlDataRecord di nuovo. I valori di colonna di SqlDataRecord sono impostati e gli stessi SqlDataRecord possono essere usati per trasmettere più righe a SQL Server come parametro con valori di tabella.

using System;
using System.Collections.Generic;
using System.Data;
using Microsoft.Data.SqlClient.Server;

// Stream rows to SQL Server as a table-valued parameter.
public static IEnumerable<SqlDataRecord> CreateNewRecord()
{
   // Re-use a single SqlDataRecord instance rather than allocating a new one for each row.
   // Each row's values are read before SqlCommand advances to the next one.
   SqlDataRecord record;    

   // Create a new record with the column metadata. The constructor is 
   // able to accept a variable number of parameters. 
   record = new SqlDataRecord(new SqlMetaData[] { new SqlMetaData("Column1", SqlDbType.NVarChar, 12), 
                                                  new SqlMetaData("Column2", SqlDbType.Int), 
                                                  new SqlMetaData("Column3", SqlDbType.DateTime) });

   // Set the record fields.
   record.SetString(0, "Hello World!");
   record.SetInt32(1, 42);
   record.SetDateTime(2, DateTime.Now);

   // Stream the first record to SQL Server.
   yield return record;

   // Set the fields of the second record and stream it to SQL Server.
   record.SetInt32(1, 0);
   yield return record;
}

Commenti

Questa classe descrive una singola riga di un parametro con valori di tabella. Crearne uno da una matrice di SqlMetaData oggetti che descrivono i metadati della colonna del record, popolarlo con i metodi Set<Type> , includerlo in un oggetto IEnumerable<SqlDataRecord> e assegnarlo IEnumerable<SqlDataRecord> a Value.

Per ottenere prestazioni ottimali quando si inviano più righe, riutilizzare una singola SqlDataRecord istanza in un IEnumerable<SqlDataRecord> iteratore: impostare nuovi valori di colonna e yield return la stessa istanza per ogni riga. SqlCommand leggerà ogni record prima di passare alla successiva.

Costruttori

Nome Descrizione
SqlDataRecord(SqlMetaData[])

Inizializza una nuova SqlDataRecord istanza con lo schema in base alla matrice di SqlMetaData oggetti passati come argomento.

Proprietà

Nome Descrizione
FieldCount

Ottiene il numero di colonne nella riga di dati. Questa proprietà è di sola lettura.

Item[Int32]

Ottiene il valore del tipo CLR (Common Language Runtime) per la colonna specificata dall'argomento colonna ordinal .

Item[String]

Ottiene il valore del tipo CLR (Common Language Runtime) per la colonna specificata dall'argomento colonna name .

Metodi

Nome Descrizione
GetBoolean(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .Boolean

GetByte(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .Byte

GetBytes(Int32, Int64, Byte[], Int32, Int32)

Ottiene il valore per la colonna specificata dall'ordinale come matrice di Byte oggetti.

GetChar(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .Char

GetChars(Int32, Int64, Char[], Int32, Int32)

Ottiene il valore per la colonna specificata dall'ordinale come matrice di Char oggetti.

GetDataTypeName(Int32)

Restituisce il nome del tipo di dati per la colonna specificata dall'argomento ordinale.

GetDateTime(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .DateTime

GetDateTimeOffset(Int32)

Restituisce i dati della colonna specificata come .DateTimeOffset

GetDecimal(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .Decimal

GetDouble(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .Double

GetFieldType(Int32)

Restituisce un Type oggetto che rappresenta il tipo CLR (Common Language Runtime) mappato al tipo di SQL Server della colonna specificata dall'argomento ordinal .

GetFloat(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .Single

GetGuid(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .Guid

GetInt16(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .Int16

GetInt32(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .Int32

GetInt64(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .Int64

GetName(Int32)

Restituisce il nome della colonna specificata dall'argomento ordinale.

GetOrdinal(String)

Restituisce l'ordinale di colonna specificato dal nome della colonna.

GetSqlBinary(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .SqlBinary

GetSqlBoolean(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .SqlBoolean

GetSqlByte(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .SqlByte

GetSqlBytes(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .SqlBytes

GetSqlChars(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .SqlChars

GetSqlDateTime(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .SqlDateTime

GetSqlDecimal(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .SqlDecimal

GetSqlDouble(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .SqlDouble

GetSqlFieldType(Int32)

Restituisce un Type oggetto che rappresenta il tipo (come tipo SQL Server, definito in System.Data.SqlTypes) mappato al tipo SQL Server della colonna.

GetSqlGuid(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .SqlGuid

GetSqlInt16(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .SqlInt16

GetSqlInt32(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .SqlInt32

GetSqlInt64(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .SqlInt64

GetSqlMetaData(Int32)

Restituisce un SqlMetaData oggetto che descrive i metadati della colonna specificata dall'ordinale di colonna.

GetSqlMoney(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .SqlMoney

GetSqlSingle(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .SqlSingle

GetSqlString(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .SqlString

GetSqlValue(Int32)

Restituisce il valore di dati archiviato nella colonna, espresso come tipo SQL Server, specificato dall'ordinale di colonna.

GetSqlValues(Object[])

Restituisce i valori per tutte le colonne del record, espresse come tipi di SQL Server, in una matrice.

GetSqlXml(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .SqlXml

GetString(Int32)

Ottiene il valore per la colonna specificata dall'ordinale come .String

GetTimeSpan(Int32)

Restituisce i dati della colonna specificata come .TimeSpan

GetValue(Int32)

Restituisce il valore del tipo CLR (Common Language Runtime) per la colonna specificata dall'argomento ordinale.

GetValues(Object[])

Restituisce i valori per tutte le colonne del record, espresse come tipi CLR (Common Language Runtime) in una matrice.

IsDBNull(Int32)

Restituisce true se la colonna specificata dal parametro ordinale della colonna è Null.

SetBoolean(Int32, Boolean)

Imposta i dati archiviati nella colonna sul valore specificato Boolean .

SetByte(Int32, Byte)

Imposta i dati archiviati nella colonna sul valore specificato Byte .

SetBytes(Int32, Int64, Byte[], Int32, Int32)

Imposta i dati archiviati nella colonna sulla matrice di Byte valori specificata.

SetChar(Int32, Char)

Imposta i dati archiviati nella colonna sul valore specificato Char .

SetChars(Int32, Int64, Char[], Int32, Int32)

Imposta i dati archiviati nella colonna sulla matrice di Char valori specificata.

SetDateTime(Int32, DateTime)

Imposta i dati archiviati nella colonna sul valore specificato DateTime .

SetDateTimeOffset(Int32, DateTimeOffset)

Imposta il valore della colonna specificata sul DateTimeOffset valore .

SetDBNull(Int32)

Imposta il valore nella colonna specificata su DBNull.

SetDecimal(Int32, Decimal)

Imposta i dati archiviati nella colonna sul valore specificato Decimal .

SetDouble(Int32, Double)

Imposta i dati archiviati nella colonna sul valore specificato Double .

SetFloat(Int32, Single)

Imposta i dati archiviati nella colonna sul valore specificato Single .

SetGuid(Int32, Guid)

Imposta i dati archiviati nella colonna sul valore specificato Guid .

SetInt16(Int32, Int16)

Imposta i dati archiviati nella colonna sul valore specificato Int16 .

SetInt32(Int32, Int32)

Imposta i dati archiviati nella colonna sul valore specificato Int32 .

SetInt64(Int32, Int64)

Imposta i dati archiviati nella colonna sul valore specificato Int64 .

SetSqlBinary(Int32, SqlBinary)

Imposta i dati archiviati nella colonna sul valore specificato SqlBinary .

SetSqlBoolean(Int32, SqlBoolean)

Imposta i dati archiviati nella colonna sul valore specificato SqlBoolean .

SetSqlByte(Int32, SqlByte)

Imposta i dati archiviati nella colonna sul valore specificato SqlByte .

SetSqlBytes(Int32, SqlBytes)

Imposta i dati archiviati nella colonna sul valore specificato SqlBytes .

SetSqlChars(Int32, SqlChars)

Imposta i dati archiviati nella colonna sul valore specificato SqlChars .

SetSqlDateTime(Int32, SqlDateTime)

Imposta i dati archiviati nella colonna sul valore specificato SqlDateTime .

SetSqlDecimal(Int32, SqlDecimal)

Imposta i dati archiviati nella colonna sul valore specificato SqlDecimal .

SetSqlDouble(Int32, SqlDouble)

Imposta i dati archiviati nella colonna sul valore specificato SqlDouble .

SetSqlGuid(Int32, SqlGuid)

Imposta i dati archiviati nella colonna sul valore specificato SqlGuid .

SetSqlInt16(Int32, SqlInt16)

Imposta i dati archiviati nella colonna sul valore specificato SqlInt16 .

SetSqlInt32(Int32, SqlInt32)

Imposta i dati archiviati nella colonna sul valore specificato SqlInt32 .

SetSqlInt64(Int32, SqlInt64)

Imposta i dati archiviati nella colonna sul valore specificato SqlInt64 .

SetSqlMoney(Int32, SqlMoney)

Imposta i dati archiviati nella colonna sul valore specificato SqlMoney .

SetSqlSingle(Int32, SqlSingle)

Imposta i dati archiviati nella colonna sul valore specificato SqlSingle .

SetSqlString(Int32, SqlString)

Imposta i dati archiviati nella colonna sul valore specificato SqlString .

SetSqlXml(Int32, SqlXml)

Imposta i dati archiviati nella colonna sul valore specificato SqlXml .

SetString(Int32, String)

Imposta i dati archiviati nella colonna sul valore specificato String .

SetTimeSpan(Int32, TimeSpan)

Imposta il valore della colonna specificata su TimeSpan.

SetValue(Int32, Object)

Imposta un nuovo valore, espresso come tipo CLR (Common Language Runtime), per la colonna specificata dall'ordinale di colonna.

SetValues(Object[])

Imposta nuovi valori per tutte le colonne nell'oggetto SqlDataRecord. Questi valori vengono espressi come tipi CLR (Common Language Runtime).

Implementazioni dell'interfaccia esplicita

Nome Descrizione
IDataRecord.GetData(Int32)

Non supportato in questa versione.

Si applica a