Firebird ADO.NET Provider SDK Documentation - v1.7

FbDataReader.GetSchemaTable Method 

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

[Visual Basic]
NotOverridable Public Function GetSchemaTable() As DataTable _
    Implements IDataReader.GetSchemaTable
[C#]
public DataTable GetSchemaTable();

Return Value

A DataTable that describes the column metadata.

Implements

IDataReader.GetSchemaTable

Remarks

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. 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 DECIMAL or NUMERIC data type, the number of digits to the right of the decimal point. Otherwise, this is a null value.
DataType Maps to the .NET Framework type of the column.
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.
IsLong True if the column contains a BLOB that contains very long data; otherwise false.
AllowDbNull True if the column allows null values; otherwise false.
IsReadOnly True if the column cannot be modified; otherwise 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.
IsUnique true if the the column is one of a set of columns of a unique key.
IsKey true if the the column is one of a set of columns of a primary key.
IsAutoIncrement true if the column assigns values to new rows in fixed increments; otherwise false. The default of this column is false.
IsAliased True if the column name is an alias; otherwise false.
IsExpression True if the column is an expression; otherwise false.
BaseSchemaName As Firebird doesn't support Schemas this column will be always NULL.
BaseCatalogName As Firebird doesn't support Catalogs this column will be always NULL.
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.
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.

Exceptions

Exception Type Condition
InvalidOperationException The FbDataReader is closed.

See Also

FbDataReader Class | FirebirdSql.Data.Firebird Namespace