返回说明 SADataReader 的列元数据的 DataTable。
Visual Basic Public Overrides Function GetSchemaTable() As DataTable
C# public override DataTable GetSchemaTable();
描述列元数据的 DataTable。
此方法按以下顺序返回关于每个列的元数据:
DataTable 列 |
说明 |
---|---|
ColumnName | 列的名称;如果该列没有名称,则为空值引用(在 Visual Basic 中是 Nothing)。如果该列在 SQL 查询中使用别名,则返回该别名。请注意,结果集中并非所有列都有名称,并且并非所有列名都是唯一的。 |
ColumnOrdinal | 列的 ID。该值在 [0, FieldCount -1] 范围内。 |
ColumnSize | 对于指定大小的列,为列中值的最大长度。对于其它列,为以字节表示的数据类型大小。 |
NumericPrecision | 数值列的精度;如果该列不是数值列,则为 DBNull。 |
NumericScale | 数值列的小数位数;如果该列不是数值列,则为 DBNull。 |
IsUnique | 如果该列在提取它的表 (BaseTableName) 中是非计算唯一列,则为 true。 |
IsKey | 如果该列是从结果集的唯一键中一起提取出来的一组列中的一列,则为 true。IsKey 设置为 true 的列集不必是作为行在结果集内唯一标识的最小集。 |
BaseServerName | SADataReader 使用的 SQL Anywhere 数据库服务器的名称。 |
BaseCatalogName | 数据库中包含该列的目录的名称。此值始终为 DBNull。 |
BaseColumnName | 数据库表 BaseTableName 中该列的原始名称;如果该列为计算列或无法确定此信息,则为 DBNull。 |
BaseSchemaName | 数据库中包含该列的模式的名称。 |
BaseTableName | 数据库中包含该列的表的名称;如果该列为计算列或无法确定此信息,则为 DBNull。 |
DataType | 最适合此类型列的 .NET 数据类型。 |
AllowDBNull | 如果该列可以为空,则为 true;如果该列不可以为空或无法确定此信息,则为 false。 |
ProviderType | 列的类型。 |
IsAliased | 如果列名是别名,则为 true;如果不是别名,则为 false。 |
IsExpression | 如果该列是表达式,则为 true;如果是列值,则为 false。 |
IsIdentity | 如果该列是标识列,则为 true;如果该列不是标识列,则为 false。 |
IsAutoIncrement | 如果该列是自动增量列或全局自动增量列,则为 true;否则(或无法确定此信息时)为 false。 |
IsRowVersion | 如果该列包含无法写入的持久性行标识符,并且该标识符除了标识行以外没有其它有意义的价值,则为 true。 |
IsHidden | 如果列是隐藏的,则为 true;否则为 false。 |
IsLong | 如果该列属于 long varchar、long nvarchar 或 long binary 列,则为 true;否则为 false。 |
IsReadOnly | 如果该列为只读,则为 true;如果该列可修改或无法确定其访问权限,则为 false。 |
有关这些列的详细信息,请参见关于 SqlDataReader.GetSchemaTable 的 .NET Framework 文档。
有关详细信息,请参见获取 DataReader 模式信息。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |