Есть ли эквивалент в typedef в Transact-SQL? - PullRequest
4 голосов
/ 12 февраля 2010

Есть ли способ наложения псевдонимов типов данных в T-SQL (SQL Server 2005), немного похожий на определение типа C? Я хотел бы иметь возможность использовать псевдоним, скажем, VARCHAR (20) как my_datatype, чтобы везде, где я хотел бы использовать VARCHAR (20), я мог вместо этого использовать my_datatype.

Синонимы позволяют вам делать такие вещи для таблиц, и есть встроенные синонимы для некоторых типов данных, но AFAICS не позволяет определить ваши собственные синонимы типов данных. Кто-нибудь знает что-то другое?

Ответы [ 5 ]

6 голосов
/ 12 февраля 2010

Как насчет этого

CREATE TYPE  [schema_name.]typename
FROM system_data_type_name [(precision,scale)] [NULL|NOT NULL]

Например

CREATE TYPE CountryCode
FROM char(2) NULL
3 голосов
/ 12 февраля 2010
2 голосов
/ 12 февраля 2010

Для SQL Server 2005 у вас есть типы alias и CLR . Оба используют CREATE TYPE

1 голос
/ 12 февраля 2010

СОЗДАТЬ ТИП возможно?

0 голосов
/ 27 сентября 2018

Для PostgreSQL синтаксис немного отличается:

CREATE DOMAIN  [schema_name.]new_typename
AS existing_typename [any_constraint];

Например:

CREATE DOMAIN CountryCode
AS char(2);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...