Поделиться через


Синонимы типов данных (Transact-SQL)

применимо к:базе данных SQL AzureУправляемому экземпляру SQL AzureAzure Synapse Analyticsanalytics Platform System (PDW)конечную точку аналитики SQL в хранилищеMicrosoft Fabric в базе данных SQL Microsoft FabricSQL в Microsoft Fabric

Синонимы типа данных включены в SQL Server для совместимости ISO. В следующей таблице перечислены синонимы и системные типы данных SQL Server, с которыми они сопоставляются.

Синоним Системный тип данных SQL Server
двоичная переменная varbinary
char varying varchar
character char
character char(1)
character(n) char(n)
character varying(n) varchar(n)
dec десятичное
двойная точность float
float[(n)] for n = 1-7 real
float[(n)] for n = 8-15 float
integer int
national character(n) nchar(n)
national char(n) nchar(n)
national character varying(n) nvarchar(n)
national char varying(n) nvarchar(n)
national text ntext
rowversion timestamp

Синонимы типов данных можно использовать вместо соответствующих базовых типов данных в инструкциях языка описания данных DDL. К таким инструкциям относятся CREATE TABLE, CREATE PROCEDURE и DECLARE @переменная. Однако после создания объекта синонимы утрачивают силу. При создании объекта ему назначается базовый тип данных, связанный с синонимом. Никаких признаков того, что в инструкции, создавшей объект, был указан синоним, не остается.

Объектам, производным от исходного объекта, таким как столбцы результирующего набора или выражения, назначается базовый тип данных. Все функции метаданных, которые используют исходный объект и любые производные от него объекты, сообщают базовый тип данных, а не синоним, включая:

  • операции с метаданными, такие как sp_help и другие системные хранимые процедуры,
  • представления информационной схемы и
  • операции с метаданными API доступа к данным, сообщающих типы данных таблицы или столбцы результирующего набора.

Например, можно создать таблицу, указав тип national character varying:

CREATE TABLE ExampleTable (PriKey int PRIMARY KEY, VarCharCol national character varying(10))  

Столбцу VarCharCol назначен тип данных nvarchar(10), и все следующие вызовы функций работы с метаданными будут сообщать, что этот столбец имеет тип nvarchar(10). а не national character varying(10).

См. также

Типы данных (Transact-SQL)