SqlMetaData 类

定义

SqlDataRecord 对象的参数和列指定和检索元数据信息。 此类不能被继承。

public ref class SqlMetaData sealed
public sealed class SqlMetaData
type SqlMetaData = class
Public NotInheritable Class SqlMetaData
继承
SqlMetaData

示例

以下示例演示如何创建多个 SqlMetaData 对象,这些对象描述记录的列元数据,以及创建 SqlDataRecord。 设置 的 SqlDataRecord 列值, SqlDataRecord 并使用 类将 发送到调用程序 SqlContext

[Microsoft.SqlServer.Server.SqlProcedure]
public static void CreateNewRecord()
{
   // Variables.
   SqlMetaData column1Info;
   SqlMetaData column2Info;
   SqlMetaData column3Info;
   SqlDataRecord record;

   // Create the column metadata.
   column1Info = new SqlMetaData("Column1", SqlDbType.NVarChar, 12);
   column2Info = new SqlMetaData("Column2", SqlDbType.Int);
   column3Info = new SqlMetaData("Column3", SqlDbType.DateTime);

   // Create a new record with the column metadata.
   record = new SqlDataRecord(new SqlMetaData[] { column1Info,
                                                  column2Info,
                                                  column3Info });

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

   // Send the record to the calling program.
   SqlContext.Pipe.Send(record);
}
<Microsoft.SqlServer.Server.SqlProcedure()> _
Public Shared Sub CreateNewRecord()

   ' Variables.
   Dim column1Info As SqlMetaData 
   Dim column2Info As SqlMetaData
   Dim column3Info As SqlMetaData
   Dim record As SqlDataRecord

   ' Create the column metadata.
   column1Info = new SqlMetaData("Column1", SqlDbType.NVarChar, 12)
   column2Info = new SqlMetaData("Column2", SqlDbType.Int)
   column3Info = new SqlMetaData("Column3", SqlDbType.DateTime)

   ' Create a new record with the column metadata.      
   record = new SqlDataRecord(new SqlMetaData() { column1Info, _
                                                  column2Info, _
                                                  column3Info })

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

   ' Send the record to the calling program.
   SqlContext.Pipe.Send(record)

End Sub

构造函数

SqlMetaData(String, SqlDbType)

使用指定的列名称和类型初始化 SqlMetaData 类的新实例。

SqlMetaData(String, SqlDbType, Boolean, Boolean, SortOrder, Int32)

使用指定的列名称和默认服务器初始化 SqlMetaData 类的新实例。 这种形式的构造函数通过允许指定表值参数中的列是否唯一、列的排序顺序和列排序的序号,支持表值参数。

SqlMetaData(String, SqlDbType, Byte, Byte)

使用指定的列名称、类型、精度和小数位数初始化 SqlMetaData 类的新实例。

SqlMetaData(String, SqlDbType, Byte, Byte, Boolean, Boolean, SortOrder, Int32)

使用指定的列名称、类型、精度、小数位数和服务器默认值初始化 SqlMetaData 类的新实例。 这种形式的构造函数通过允许指定表值参数中的列是否唯一、列的排序顺序和列排序的序号,支持表值参数。

SqlMetaData(String, SqlDbType, Int64)

使用指定的列名称、类型和最大长度初始化 SqlMetaData 类的新实例。

SqlMetaData(String, SqlDbType, Int64, Boolean, Boolean, SortOrder, Int32)

使用指定的列名称、类型、最大长度和服务器默认值初始化 SqlMetaData 类的新实例。 这种形式的构造函数通过允许指定表值参数中的列是否唯一、列的排序顺序和列排序的序号,支持表值参数。

SqlMetaData(String, SqlDbType, Int64, Byte, Byte, Int64, SqlCompareOptions, Type)

使用指定的列名称、类型、最大长度、精度、小数位数、区域设置 ID、比较选项和用户定义的类型 (UDT) 初始化 SqlMetaData 类的新实例。

SqlMetaData(String, SqlDbType, Int64, Byte, Byte, Int64, SqlCompareOptions, Type, Boolean, Boolean, SortOrder, Int32)

使用指定的列名称、类型、最大长度、精度、小数位数、区域设置 ID、比较选项和用户定义的类型 (UDT) 初始化 SqlMetaData 类的新实例。 这种形式的构造函数通过允许指定表值参数中的列是否唯一、列的排序顺序和列排序的序号,支持表值参数。

SqlMetaData(String, SqlDbType, Int64, Int64, SqlCompareOptions)

使用指定的列名称、类型、最大长度、区域设置和比较选项初始化 SqlMetaData 类的新实例。

SqlMetaData(String, SqlDbType, Int64, Int64, SqlCompareOptions, Boolean, Boolean, SortOrder, Int32)

使用指定的列名称、类型、最大长度、区域设置、比较选项和服务器默认值初始化 SqlMetaData 类的新实例。 这种形式的构造函数通过允许指定表值参数中的列是否唯一、列的排序顺序和列排序的序号,支持表值参数。

SqlMetaData(String, SqlDbType, String, String, String)

使用指定的列名称、类型、数据库名称、所属架构和对象名称初始化 SqlMetaData 类的新实例。

SqlMetaData(String, SqlDbType, String, String, String, Boolean, Boolean, SortOrder, Int32)

使用指定的列名称、数据库名称、所属架构、对象名称和默认服务器初始化 SqlMetaData 类的新实例。 这种形式的构造函数通过允许指定表值参数中的列是否唯一、列的排序顺序和列排序的序号,支持表值参数。

SqlMetaData(String, SqlDbType, Type)

使用指定的列名称、类型和用户定义的类型 (UDT) 初始化 SqlMetaData 类的新实例。

SqlMetaData(String, SqlDbType, Type, String)

使用指定的列名称、用户定义的类型 (UDT) 和 SQLServer 类型初始化 SqlMetaData 类的新实例。

SqlMetaData(String, SqlDbType, Type, String, Boolean, Boolean, SortOrder, Int32)

使用指定的列名称、类型、用户定义的类型、SQL Server 类型和服务器默认值初始化 SqlMetaData 类的新实例。 这种形式的构造函数通过允许指定表值参数中的列是否唯一、列的排序顺序和列排序的序号,支持表值参数。

属性

CompareOptions

获取用于列或参数的比较规则。

DbType

获取列或参数的数据类型。

IsUniqueKey

指示表值参数中的列是否唯一。

LocaleId

获取列或参数的区域设置 ID。

Max

获取 textntextimage 数据类型的长度。

MaxLength

获取列或参数的最大长度。

Name

获取列或参数的名称。

Precision

获取列或参数的精度。

Scale

获取列或参数的小数位数。

SortOrder

返回列的排序顺序。

SortOrdinal

返回列排序的序号。

SqlDbType

获取列或参数的数据类型。

Type

获取用户定义的类型 (UDT) 的公共语言运行时 (CLR) 类型。

TypeName

获取该实例所表示的用户定义的类型 (UDT) 或 SQL Server 类型的名称,名称由三部分组成。

UseServerDefault

报告此列是否应使用默认服务器值。

XmlSchemaCollectionDatabase

获取此 XML 实例的架构集合所在的数据库的名称。

XmlSchemaCollectionName

获取此 XML 实例的架构集合的名称。

XmlSchemaCollectionOwningSchema

获取此 XML 实例的架构集合所在的所属关系架构。

方法

Adjust(Boolean)

根据元数据验证指定的 Boolean 值,并在需要时调整该值。

Adjust(Byte)

根据元数据验证指定的 Byte 值,并在需要时调整该值。

Adjust(Byte[])

根据元数据验证指定的 Byte 值的数组,并在需要时调整该值。

Adjust(Char)

根据元数据验证指定的 Char 值,并在需要时调整该值。

Adjust(Char[])

根据元数据验证指定的 Char 值的数组,并在需要时调整该值。

Adjust(DateTime)

根据元数据验证指定的 DateTime 值,并在需要时调整该值。

Adjust(DateTimeOffset)

根据元数据验证指定的 DateTimeOffset 值,并在需要时调整该值。

Adjust(Decimal)

根据元数据验证指定的 Decimal 值,并在需要时调整该值。

Adjust(Double)

根据元数据验证指定的 Double 值,并在需要时调整该值。

Adjust(Guid)

根据元数据验证指定的 Guid 值,并在需要时调整该值。

Adjust(Int16)

根据元数据验证指定的 Int16 值,并在需要时调整该值。

Adjust(Int32)

根据元数据验证指定的 Int32 值,并在需要时调整该值。

Adjust(Int64)

根据元数据验证指定的 Int64 值,并在需要时调整该值。

Adjust(Object)

根据元数据验证指定的 Object 值,并在需要时调整该值。

Adjust(Single)

根据元数据验证指定的 Single 值,并在需要时调整该值。

Adjust(SqlBinary)

根据元数据验证指定的 SqlBinary 值,并在需要时调整该值。

Adjust(SqlBoolean)

根据元数据验证指定的 SqlBoolean 值,并在需要时调整该值。

Adjust(SqlByte)

根据元数据验证指定的 SqlByte 值,并在需要时调整该值。

Adjust(SqlBytes)

根据元数据验证指定的 SqlBytes 值,并在需要时调整该值。

Adjust(SqlChars)

根据元数据验证指定的 SqlChars 值,并在需要时调整该值。

Adjust(SqlDateTime)

根据元数据验证指定的 SqlDateTime 值,并在需要时调整该值。

Adjust(SqlDecimal)

根据元数据验证指定的 SqlDecimal 值,并在需要时调整该值。

Adjust(SqlDouble)

根据元数据验证指定的 SqlDouble 值,并在需要时调整该值。

Adjust(SqlGuid)

根据元数据验证指定的 SqlGuid 值,并在需要时调整该值。

Adjust(SqlInt16)

根据元数据验证指定的 SqlInt16 值,并在需要时调整该值。

Adjust(SqlInt32)

根据元数据验证指定的 SqlInt32 值,并在需要时调整该值。

Adjust(SqlInt64)

根据元数据验证指定的 SqlInt64 值,并在需要时调整该值。

Adjust(SqlMoney)

根据元数据验证指定的 SqlMoney 值,并在需要时调整该值。

Adjust(SqlSingle)

根据元数据验证指定的 SqlSingle 值,并在需要时调整该值。

Adjust(SqlString)

根据元数据验证指定的 SqlString 值,并在需要时调整该值。

Adjust(SqlXml)

根据元数据验证指定的 SqlXml 值,并在需要时调整该值。

Adjust(String)

根据元数据验证指定的 String 值,并在需要时调整该值。

Adjust(TimeSpan)

根据元数据验证指定的 TimeSpan 值,并在需要时调整该值。

InferFromValue(Object, String)

从指定的对象推导出元数据,并将它作为 SqlMetaData 实例返回。

适用于