Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
V0160:
The specification states the following:
-
Subclause 5.4, "Names and identifiers": <schema-resolved user-defined type name> ::= <user-defined type name> <user-defined type name> ::= [ <schema name> <period> ] <qualified identifier> <attribute name> ::= <identifier> ... Conformance Rules Without Feature S023, "Basic structured types", conforming SQL language shall not contain a <attribute name>. Subclause 6.1, "<data type>": <path-resolved user-defined type name> ::= <user-defined type name> ... Conformance Rules Without Feature S023, "Basic structured types", conforming SQL language shall not contain a <path-resolved user-defined type name> that identifies a structured type. Subclause 6.17, "<method invocation>": <method invocation> ::= <direct invocation> | <generalized invocation> <direct invocation> ::= <value expression primary> <period> <method name> [ <SQL argument list> ] <generalized invocation> ::= <left paren> <value expression primary> AS <data type> <right paren> <period> <method name> [ <SQL argument list> ] ... Conformance Rules Without Feature S023, "Basic structured types", conforming SQL language shall not contain a <method invocation>. Subclause 6.19, "<new specification>": <new specification> ::= NEW <path-resolved user-defined type name> <SQL argument list> ... Conformance Rules Without Feature S023, "Basic structured types", conforming SQL language shall not contain a <new specification>. Subclause 10.4, "<routine invocation>": <generalized expression> ::= <value expression> AS <path-resolved user-defined type name> ... Conformance Rules Without Feature S023, "Basic structured types", conforming SQL language shall not contain a <generalized expression>. Subclause 11.51, "<user-defined type definition>": <member list> ::= <left paren> <member> [ { <comma> <member> }... ] <right paren> ... <method specification list> ::= <method specification> [ { <comma> <method specification> }... ] ... Conformance Rules Without Feature S023, "Basic structured types", conforming SQL language shall not contain a <member list>. ... Without Feature S023, "Basic structured types", conforming SQL language shall not contain a <method specification list>. Subclause 11.52, "<attribute definition>": <attribute definition> ::= <attribute name> <data type> [ <attribute default> ] [ <collate clause> ] ... Conformance Rules Without Feature S023, "Basic structured types", conforming SQL language shall not contain an <attribute definition>. Subclause 11.60, "<SQL-invoked routine>": <method specification designator> ::= SPECIFIC METHOD <specific method name> | [ INSTANCE | STATIC | CONSTRUCTOR ] METHOD <method name> <SQL parameter declaration list> [ <returns clause> ] FOR <schema-resolved user-defined type name> ... Conformance Rules Without Feature S023, "Basic structured types", conforming SQL language shall not contain a <method specification designator>. Subclause 12.3, "<privileges>": <privileges> ::= <object privileges> ON <object name> <object name> ::= [ TABLE ] <table name> | DOMAIN <domain name> | COLLATION <collation name> | CHARACTER SET <character set name> | TRANSLATION <transliteration name> | TYPE <schema-resolved user-defined type name> | SEQUENCE <sequence generator name> | <specific routine designator> <object privileges> ::= ALL PRIVILEGES | <action> [ { <comma> <action> }... ] <action> ::= SELECT | SELECT <left paren> <privilege column list> <right paren> | SELECT <left paren> <privilege method list> <right paren> | DELETE | INSERT [ <left paren> <privilege column list> <right paren> ] | UPDATE [ <left paren> <privilege column list> <right paren> ] | REFERENCES [ <left paren> <privilege column list> <right paren> ] | USAGE | TRIGGER | UNDER | EXECUTE ... Conformance Rules Without Feature S023, "Basic structured types", conforming SQL language shall not contain a <privileges> that contains an <action> that contains UNDER and that contains an <object name> that contains a <schema-resolved user-defined type name> that identifies a structured type.
Microsoft SQL Server 2008 R2 and Microsoft SQL Server 2012 vary as follows:
Transact-SQL does not support this feature. The CREATE TYPE command in Transact-SQL can create only scalar types.