Table of contents
TOC
Collapse the table of content
Expand the table of content

usql.types (U-SQL)

Michael Rys|Last Updated: 5/15/2018
|
4 Contributors

Contains a row for each built-in type as well as user-defined types (both scalar and table types) belonging to the schemas in the current database context. Since user-defined types are not directly registered in the U-SQL catalog (but are part of the assemblies), they are not included in this view.

Important

This catalog view's content is subject to change in a future refresh!

Column nameData typeDescription
type_id_guidGuidTypes's unique identifier
namestringType's name alias (unique within the type family)
type_familystringName of the type system family, together with the type name's alias, uniquely identifies the type. U-SQL supports the following values:

SQL = SQL Server Type system family

C# = C# type system family

U-SQL = U-SQL table types
qualified_namestringFully qualified name of the underlying C# type library representing the type. This name uniquely identifies the type.
schema_id_guidGuidID of the database schema the type belongs to
is_explicit_nullablebool?True = Type can be marked explicitly as nullable (e.g. int?)

False = Type cannot be marked explicitly as nullable (e.g. C#'s string)

Null = Is a table type
is_user_definedboolTrue = User-defined type

False = Built-in data type
is_assembly_typeboolTrue = Implementation of the type is defined in a CLR assembly

False = Type is based on a SQL Server system data type or is a U-SQL table type
is_table_typeboolIndicates if the type is a table type
is_complexboolTrue = Type is considered complex for serialization and query purposes

False = Type is considered scalar for serialization and query purposes
precisionint?Indicates the max precision of the type if it is a numeric type, 0 otherwise, null if it is not a built-in type
scaleint?Indicates the max scale of the type if it is a numeric type, 0 otherwise, null if it is not a built-in type
is_nullablebool?False = Type implicitly allows null value

True = Type does not implicitly allow null value

Null = Is a table type
is_preciseint?Supported values are:

0 = Type semantics is imprecise

1 = Type semantics is precise

2 = Type semantics regarding precision is determined based on other aspects (e.g., in complex types, if all referenced types are precise then the complex type is precise)

Null = Is a table type
is_foldablebool?False = Expressions of this type cannot be constant-folded in query processing

True = Expressions of this type can be constant-folded

Null = Is a table type
is_comparablebool?False = Values of this type cannot be compared or ordered

True = Values of this type can be compared and ordered

Null = Is a table type
is_real_numberbool?False = Value of this type is not a real number

True = Value of this type is a real number

Null = Not a built-in type

Examples

The examples can be executed in Visual Studio with the Azure Data Lake Tools plug-in.

Query the usql.types view

USE TestReferenceDB;

OUTPUT usql.types
TO "/ReferenceGuide/CatalogViews/types.txt"
USING Outputters.Tsv(outputHeader:true);

See Also

© 2018 Microsoft