Table of Contents

Class InformationSchema.Column

Namespace
LinqToDB.Tools.DataProvider.SqlServer.Schemas
Assembly
linq2db.Tools.dll

COLUMNS (Transact-SQL)

Applies to: √ SQL Server (all supported versions) √ Azure SQL Database √ Azure SQL Managed Instance √ Azure Synapse Analytics √ Analytics Platform System (PDW)

Returns one row for each column that can be accessed by the current user in the current database.
To retrieve information from these views, specify the fully qualified name of INFORMATION_SCHEMA_.view_name_.


See INFORMATION_SCHEMA.COLUMNS.

[Table(Schema = "INFORMATION_SCHEMA", Name = "COLUMNS", IsView = true)]
public class InformationSchema.Column
Inheritance
InformationSchema.Column
Extension Methods

Properties

CharacterMaximumLength

Maximum length, in characters, for binary data, character data, or text and image data.

-1 for xml and large-value type data. Otherwise, NULL is returned. For more information, see Data Types (Transact-SQL).

[Column("CHARACTER_MAXIMUM_LENGTH")]
[Nullable]
public int? CharacterMaximumLength { get; set; }

Property Value

int?

CharacterOctetLength

Maximum length, in bytes, for binary data, character data, or text and image data.

-1 for xml and large-value type data. Otherwise, NULL is returned.

[Column("CHARACTER_OCTET_LENGTH")]
[Nullable]
public int? CharacterOctetLength { get; set; }

Property Value

int?

CharacterSetCatalog

Returns master. This indicates the database in which the character set is located, if the column is character data or text data type. Otherwise, NULL is returned.

[Column("CHARACTER_SET_CATALOG")]
[Nullable]
public string? CharacterSetCatalog { get; set; }

Property Value

string

CharacterSetName

Returns the unique name for the character set if this column is character data or text data type. Otherwise, NULL is returned.

[Column("CHARACTER_SET_NAME")]
[Nullable]
public string? CharacterSetName { get; set; }

Property Value

string

CharacterSetSchema

Always returns NULL.

[Column("CHARACTER_SET_SCHEMA")]
[Nullable]
public string? CharacterSetSchema { get; set; }

Property Value

string

CollationCatalog

Always returns NULL.

[Column("COLLATION_CATALOG")]
[Nullable]
public string? CollationCatalog { get; set; }

Property Value

string

CollationName

Returns the unique name for the collation if the column is character data or text data type. Otherwise, NULL is returned.

[Column("COLLATION_NAME")]
[Nullable]
public string? CollationName { get; set; }

Property Value

string

CollationSchema

Always returns NULL.

[Column("COLLATION_SCHEMA")]
[Nullable]
public string? CollationSchema { get; set; }

Property Value

string

ColumnDefault

Default value of the column.

[Column("COLUMN_DEFAULT")]
[Nullable]
public string? ColumnDefault { get; set; }

Property Value

string

ColumnName

Column name.

[Column("COLUMN_NAME")]
[Nullable]
public string? ColumnName { get; set; }

Property Value

string

DataType

System-supplied data type.

[Column("DATA_TYPE")]
[Nullable]
public string? DataType { get; set; }

Property Value

string

DatetimePrecision

Subtype code for datetime and ISO interval data types. For other data types, NULL is returned.

[Column("DATETIME_PRECISION")]
[Nullable]
public short? DatetimePrecision { get; set; }

Property Value

short?

DomainCatalog

If the column is an alias data type, this column is the database name in which the user-defined data type was created. Otherwise, NULL is returned.

[Column("DOMAIN_CATALOG")]
[Nullable]
public string? DomainCatalog { get; set; }

Property Value

string

DomainName

If the column is a user-defined data type, this column is the name of the user-defined data type. Otherwise, NULL is returned.

[Column("DOMAIN_NAME")]
[Nullable]
public string? DomainName { get; set; }

Property Value

string

DomainSchema

If the column is a user-defined data type, this column returns the name of the schema of the user-defined data type. Otherwise, NULL is returned.

Important Do not use INFORMATION_SCHEMA views to determine the schema of a data type. The only reliable way to find the schema of a type is to use the TYPEPROPERTY function.

[Column("DOMAIN_SCHEMA")]
[Nullable]
public string? DomainSchema { get; set; }

Property Value

string

IsNullable

Nullability of the column. If this column allows for NULL, this column returns YES. Otherwise, NO is returned.

[Column("IS_NULLABLE")]
[Nullable]
public string? IsNullable { get; set; }

Property Value

string

NumericPrecision

Precision of approximate numeric data, exact numeric data, integer data, or monetary data. Otherwise, NULL is returned.

[Column("NUMERIC_PRECISION")]
[Nullable]
public byte? NumericPrecision { get; set; }

Property Value

byte?

NumericPrecisionRadix

Precision radix of approximate numeric data, exact numeric data, integer data, or monetary data. Otherwise, NULL is returned.

[Column("NUMERIC_PRECISION_RADIX")]
[Nullable]
public short? NumericPrecisionRadix { get; set; }

Property Value

short?

NumericScale

Scale of approximate numeric data, exact numeric data, integer data, or monetary data. Otherwise, NULL is returned.

[Column("NUMERIC_SCALE")]
[Nullable]
public int? NumericScale { get; set; }

Property Value

int?

OrdinalPosition

Column identification number.

[Column("ORDINAL_POSITION")]
[Nullable]
public int? OrdinalPosition { get; set; }

Property Value

int?

TableCatalog

Table qualifier.

[Column("TABLE_CATALOG")]
[Nullable]
public string? TableCatalog { get; set; }

Property Value

string

TableName

Table name.

[Column("TABLE_NAME")]
[NotNull]
public string TableName { get; set; }

Property Value

string

TableSchema

Name of schema that contains the table.

Important Do not use INFORMATION_SCHEMA views to determine the schema of an object. INFORMATION_SCHEMA views only represent a subset of the metadata of an object. The only reliable way to find the schema of a object is to query the sys.objects catalog view.

[Column("TABLE_SCHEMA")]
[Nullable]
public string? TableSchema { get; set; }

Property Value

string