GetSchemaTable method

Returns a DataTable that describes the column metadata of the SADataReader.

Syntax
Visual Basic

Public Overrides Function GetSchemaTable() As DataTable
C#

public override DataTable GetSchemaTable();
Return value

A DataTable that describes the column metadata.

Remarks

This method returns metadata about each column in the following order:

DataTable column

Description

ColumnName The name of the column or a null reference (Nothing in Visual Basic) if the column has no name. If the column is aliased in the SQL query, the alias is returned. Note that in result sets, not all columns have names and not all column names are unique.
ColumnOrdinal The ID of the column. The value is in the range [0, FieldCount -1].
ColumnSize For sized columns, the maximum length of a value in the column. For other columns, this is the size in bytes of the data type.
NumericPrecision The precision of a numeric column or DBNull if the column is not numeric.
NumericScale The scale of a numeric column or DBNull if the column is not numeric.
IsUnique True if the column is a non-computed unique column in the table (BaseTableName) it is taken from.
IsKey True if the column is one of a set of columns in the result set that taken together from a unique key for the result set. The set of columns with IsKey set to true does not need to be the minimal set that uniquely identifies a row in the result set.
BaseServerName The name of the SQL Anywhere database server used by the SADataReader.
BaseCatalogName The name of the catalog in the database that contains the column. This value is always DBNull.
BaseColumnName The original name of the column in the table BaseTableName of the database or DBNull if the column is computed or if this information cannot be determined.
BaseSchemaName The name of the schema in the database that contains the column.
BaseTableName The name of the table in the database that contains the column, or DBNull if column is computed or if this information cannot be determined.
DataType The .NET data type that is most appropriate for this type of column.
AllowDBNull True if the column is nullable, false if the column is not nullable or if this information cannot be determined.
ProviderType The type of the column.
IsAliased True if the column name is an alias, false if it is not an alias.
IsExpression True if the column is an expression, false if it is a column value.
IsIdentity True if the column is an identity column, false if it is not an identity column.
IsAutoIncrement True if the column is an autoincrement or global autoincrement column, false otherwise (or if this information cannot be determined).
IsRowVersion True if the column contains a persistent row identifier that cannot be written to, and has no meaningful value except to identify the row.
IsHidden True if the column is hidden, false otherwise.
IsLong True if the column is a long varchar, long nvarchar, or a long binary column, false otherwise.
IsReadOnly True if the column is read-only, false if the column is modifiable or if its access cannot be determined.

For more information about these columns, see the .NET Framework documentation for SqlDataReader.GetSchemaTable.

For more information, see Obtaining DataReader schema information.

See also