asp.net.ph

SqlDataReader.GetSchemaTable Method

System.Data.SqlClient Namespace   SqlDataReader Class


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

[ VB ]
NotOverridable Public Function GetSchemaTable ( ) As DataTable

[ C# ]
public DataTable GetSchemaTable ( );

[ C++ ]
public: __sealed DataTable GetSchemaTable ( );

[ JScript ]
public function GetSchemaTable ( ) : DataTable

Return Value

A DataTable that describes the column metadata.

Exceptions


Exception Type Condition
InvalidOperationException Occurs when the SqlDataReader is closed.

Remarks

The GetSchemaTable method returns metadata about each column in the following order:

DataReader Column Description
ColumnName The name of the column; this might not be unique. If this cannot be determined, a null value is returned. This name always reflects the most recent renaming of the column in the current view or command text.
ColumnOrdinal The ordinal of the column. This is zero for the bookmark column of the row, if any. Other columns are numbered starting with one. This column cannot contain a null value.
ColumnSize The maximum possible length of a value in the column. For columns that use a fixed-length data type, this is the size of the data type.
NumericPrecision If ProviderType is a numeric data type, this is the maximum precision of the column. The precision depends on the definition of the column. If ProviderType is not a numeric data type, this is a null value.
NumericScale If ProviderType is is DBTYPE_DECIMAL or DBTYPE_NUMERIC, the number of digits to the right of the decimal point. Otherwise, this is a null value.
IsUnique true: No two rows in the base table-the table returned in BaseTableName-can have the same value in this column. IsUnique is guaranteed to be true if the column constitutes a key by itself or if there is a constraint of type UNIQUE that applies only to this column. false: The column can contain duplicate values in the base table.The default of this column is false.
IsKey true: The column is one of a set of columns in the rowset that, taken together, uniquely identify the row. The set of columns with IsKey set to true must uniquely identify a row in the rowset. There is no requirement that this set of columns is a minimal set of columns. This set of columns may be generated from a base table primary key, a unique constraint or a unique index. false: The column is not required to uniquely identify the row.
BaseCatalogName The name of the catalog in the data store that contains the column. NULL if the base catalog name cannot be determined. The default of this column is a null value.
BaseColumnName The name of the column in the data store. This might be different than the column name returned in the ColumnName column if an alias was used. A null value if the base column name cannot be determined or if the rowset column is derived, but not identical to, a column in the data store. The default of this column is a null value.
BaseSchemaName The name of the schema in the data store that contains the column. A null value if the base schema name cannot be determined. The default of this column is a null value.
BaseTableName The name of the table or view in the data store that contains the column. A null value if the base table name cannot be determined. The default of this column is a null value.
DataType Maps to the .Net Framework type of the column.
AllowDBNull Set if the consumer can set the column to a null value or if the provider cannot determine whether or not the consumer can set the column to a null value. Otherwise, not set. A column may contain null values, even if it cannot be set to a null value.
ProviderType The indicator of the column's data type. If the data type of the column varies from row to row, this must be Object. This column cannot contain a null value.
IsAliased true if the column name is an alias; otherwise false.
IsExpression true if the column is an expression; otherwise false.
IsIdentity true if the column is an identity column; otherwise false.
IsAutoIncrement true: The column assigns values to new rows in fixed increments. false: The column does not assign values to new rows in fixed increments.The default of this column is false.
IsRowVersion Set if the column contains a persistent row identifier that cannot be written to, and has no meaningful value except to identity the row.
IsHidden true if the column is hidden; otherwise false.
IsLong Set if the column contains a Binary Long Object ( BLOB ) that contains very long data. The definition of very long data is provider-specific.
IsReadOnly true if the column can be modified; otherwise false.

See Also

SqlDataReader Members Skip Navigation Links




Home
Suggested Reading


Previous page Back to top Next page

© 2000-2010 Rey Nuñez All rights reserved.

If you have any question, comment or suggestion
about this site, please send us a note

You can help support asp.net.ph