Язык

SqlDataRecord Класс

Определение

Представляет одну строку данных и ее метаданные.

public ref class SqlDataRecord : System::Data::IDataRecord
public class SqlDataRecord : System.Data.IDataRecord
type SqlDataRecord = class
    interface IDataRecord
Public Class SqlDataRecord
Implements IDataRecord
Наследование
SqlDataRecord
Реализации

Примеры

В следующем примере показано, как создать несколько SqlMetaData объектов, описывающих метаданные столбца записи, а затем создать повторно используемые SqlDataRecord экземпляры. Значения столбцов SqlDataRecord задаются, а те же SqlDataRecord можно использовать для потоковой передачи нескольких строк в SQL Server в качестве табличного параметра.

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;
}

Комментарии

Этот класс описывает одну строку табличного параметра. Создайте один из массива объектов, описывающих метаданные столбца SqlMetaData записи, заполните его методами Set<Type> , включите его в IEnumerable<SqlDataRecord> объект и назначьте его IEnumerable<SqlDataRecord>Value.

Для повышения производительности при отправке нескольких строк повторно используйте один SqlDataRecord экземпляр в итераторе: задайте новые значения столбцов и один и yield return тот же экземпляр для каждой IEnumerable<SqlDataRecord> строки. SqlCommand считывает каждую запись перед переходом к следующей.

Конструкторы

Имя. Описание
SqlDataRecord(SqlMetaData[])

Инициализирует новый SqlDataRecord экземпляр с схемой на основе массива объектов, переданных в качестве аргумента SqlMetaData .

Свойства

Имя. Описание
FieldCount

Возвращает количество столбцов в строке данных. Это свойство доступно только для чтения.

Item[Int32]

Возвращает значение типа среды CLR для столбца, указанного аргументом столбца ordinal .

Item[String]

Возвращает значение типа среды CLR для столбца, указанного аргументом столбца name .

Методы

Имя. Описание
GetBoolean(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового Booleanномера.

GetByte(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового Byteномера.

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

Возвращает значение столбца, указанного порядком в виде массива Byte объектов.

GetChar(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового Charномера.

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

Возвращает значение столбца, указанного порядком в виде массива Char объектов.

GetDataTypeName(Int32)

Возвращает имя типа данных для столбца, указанного порядковый аргумент.

GetDateTime(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового DateTimeномера.

GetDateTimeOffset(Int32)

Возвращает данные указанного столбца в виде DateTimeOffset.

GetDecimal(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового Decimalномера.

GetDouble(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового Doubleномера.

GetFieldType(Int32)

Type Возвращает объект, представляющий тип среды CLR, который сопоставляется с типом SQL Server столбца, заданного аргументомordinal.

GetFloat(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового Singleномера.

GetGuid(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового Guidномера.

GetInt16(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового Int16номера.

GetInt32(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового Int32номера.

GetInt64(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового Int64номера.

GetName(Int32)

Возвращает имя столбца, указанного порядковый аргумент.

GetOrdinal(String)

Возвращает порядковый номер столбца, заданный именем столбца.

GetSqlBinary(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового SqlBinaryномера.

GetSqlBoolean(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового SqlBooleanномера.

GetSqlByte(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового SqlByteномера.

GetSqlBytes(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового SqlBytesномера.

GetSqlChars(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового SqlCharsномера.

GetSqlDateTime(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового SqlDateTimeномера.

GetSqlDecimal(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового SqlDecimalномера.

GetSqlDouble(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового SqlDoubleномера.

GetSqlFieldType(Int32)

Type Возвращает объект, представляющий тип (как тип SQL Server, определенный в System.Data.SqlTypes) который сопоставляется с типом SQL Server столбца.

GetSqlGuid(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового SqlGuidномера.

GetSqlInt16(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового SqlInt16номера.

GetSqlInt32(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового SqlInt32номера.

GetSqlInt64(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового SqlInt64номера.

GetSqlMetaData(Int32)

SqlMetaData Возвращает объект, описывающий метаданные столбца, указанного порядковый номер столбца.

GetSqlMoney(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового SqlMoneyномера.

GetSqlSingle(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового SqlSingleномера.

GetSqlString(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового SqlStringномера.

GetSqlValue(Int32)

Возвращает значение данных, хранящееся в столбце, выраженное как тип SQL Server, указанный порядковый номер столбца.

GetSqlValues(Object[])

Возвращает значения для всех столбцов записи, выраженных как SQL Server типы в массиве.

GetSqlXml(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового SqlXmlномера.

GetString(Int32)

Возвращает значение столбца, указанного порядком в виде порядкового Stringномера.

GetTimeSpan(Int32)

Возвращает данные указанного столбца в виде TimeSpan.

GetValue(Int32)

Возвращает значение типа среды CLR для столбца, указанного порядковый аргумент.

GetValues(Object[])

Возвращает значения для всех столбцов записи, выраженных как типы среды CLR в массиве.

IsDBNull(Int32)

Возвращает значение true NULL, если столбец, указанный порядковый параметр столбца, имеет значение NULL.

SetBoolean(Int32, Boolean)

Задает данные, хранящиеся в столбце, указанным Boolean значением.

SetByte(Int32, Byte)

Задает данные, хранящиеся в столбце, указанным Byte значением.

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

Задает данные, хранящиеся в столбце, в указанный массив значений Byte .

SetChar(Int32, Char)

Задает данные, хранящиеся в столбце, указанным Char значением.

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

Задает данные, хранящиеся в столбце, в указанный массив значений Char .

SetDateTime(Int32, DateTime)

Задает данные, хранящиеся в столбце, указанным DateTime значением.

SetDateTimeOffset(Int32, DateTimeOffset)

Задает значение столбца, указанного в значении DateTimeOffset .

SetDBNull(Int32)

Задает значение в указанном столбце DBNull.

SetDecimal(Int32, Decimal)

Задает данные, хранящиеся в столбце, указанным Decimal значением.

SetDouble(Int32, Double)

Задает данные, хранящиеся в столбце, указанным Double значением.

SetFloat(Int32, Single)

Задает данные, хранящиеся в столбце, указанным Single значением.

SetGuid(Int32, Guid)

Задает данные, хранящиеся в столбце, указанным Guid значением.

SetInt16(Int32, Int16)

Задает данные, хранящиеся в столбце, указанным Int16 значением.

SetInt32(Int32, Int32)

Задает данные, хранящиеся в столбце, указанным Int32 значением.

SetInt64(Int32, Int64)

Задает данные, хранящиеся в столбце, указанным Int64 значением.

SetSqlBinary(Int32, SqlBinary)

Задает данные, хранящиеся в столбце, указанным SqlBinary значением.

SetSqlBoolean(Int32, SqlBoolean)

Задает данные, хранящиеся в столбце, указанным SqlBoolean значением.

SetSqlByte(Int32, SqlByte)

Задает данные, хранящиеся в столбце, указанным SqlByte значением.

SetSqlBytes(Int32, SqlBytes)

Задает данные, хранящиеся в столбце, указанным SqlBytes значением.

SetSqlChars(Int32, SqlChars)

Задает данные, хранящиеся в столбце, указанным SqlChars значением.

SetSqlDateTime(Int32, SqlDateTime)

Задает данные, хранящиеся в столбце, указанным SqlDateTime значением.

SetSqlDecimal(Int32, SqlDecimal)

Задает данные, хранящиеся в столбце, указанным SqlDecimal значением.

SetSqlDouble(Int32, SqlDouble)

Задает данные, хранящиеся в столбце, указанным SqlDouble значением.

SetSqlGuid(Int32, SqlGuid)

Задает данные, хранящиеся в столбце, указанным SqlGuid значением.

SetSqlInt16(Int32, SqlInt16)

Задает данные, хранящиеся в столбце, указанным SqlInt16 значением.

SetSqlInt32(Int32, SqlInt32)

Задает данные, хранящиеся в столбце, указанным SqlInt32 значением.

SetSqlInt64(Int32, SqlInt64)

Задает данные, хранящиеся в столбце, указанным SqlInt64 значением.

SetSqlMoney(Int32, SqlMoney)

Задает данные, хранящиеся в столбце, указанным SqlMoney значением.

SetSqlSingle(Int32, SqlSingle)

Задает данные, хранящиеся в столбце, указанным SqlSingle значением.

SetSqlString(Int32, SqlString)

Задает данные, хранящиеся в столбце, указанным SqlString значением.

SetSqlXml(Int32, SqlXml)

Задает данные, хранящиеся в столбце, указанным SqlXml значением.

SetString(Int32, String)

Задает данные, хранящиеся в столбце, указанным String значением.

SetTimeSpan(Int32, TimeSpan)

Задает значение столбца, указанного в параметре TimeSpan.

SetValue(Int32, Object)

Задает новое значение, выраженное как тип среды CLR, для столбца, указанного порядковый номер столбца.

SetValues(Object[])

Задает новые значения для всех столбцов в .SqlDataRecord Эти значения выражаются как типы среды CLR.

Явные реализации интерфейса

Имя. Описание
IDataRecord.GetData(Int32)

Не поддерживается в этом выпуске.

Применяется к