Sinónimos de tipos de datos (Transact-SQL)
Los sinónimos de tipos de datos se incluyen en SQL Server 2005 por compatibilidad con SQL-92. En la siguiente tabla se incluyen los sinónimos y los tipos de datos de sistema de SQL Server a los que se asignan.
Sinónimo | Tipo de datos de sistema de SQL Server |
---|---|
Binary varying |
varbinary |
char varying |
varchar |
character |
char |
character |
char(1) |
character(n) |
char(n) |
character varying(n) |
varchar(n) |
Dec |
decimal |
Double precision |
float |
float[(n)] para n = 1-7 |
real |
float[(n)] para 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 |
Los sinónimos de tipos de datos pueden utilizarse en lugar del nombre del tipo de datos base correspondiente en las instrucciones del lenguaje de definición de datos (DDL), como CREATE TABLE, CREATE PROCEDURE o DECLARE @variable. Sin embargo, los sinónimos no tienen visibilidad después de crear el objeto. Una vez creado el objeto, se le asigna el tipo de datos base asociado al sinónimo. No hay ningún registro de que el sinónimo se haya especificado en la instrucción que ha creado el objeto.
A todos los objetos que proceden del objeto original, como las columnas del conjunto de resultados o las expresiones, se les asigna el tipo de datos base. Todas las funciones de metadatos subsiguientes ejecutadas en el objeto original y cualquier objeto derivado informarán del tipo de datos base y no del sinónimo. Este comportamiento se produce con las operaciones de metadatos como sp_help y otros procedimientos almacenados del sistema, las vistas del esquema de información o las diferentes operaciones de metadatos de la API de acceso a datos que informan de los tipos de datos de las columnas de tablas o conjuntos de resultados.
Por ejemplo, puede crear una tabla si especifica national character varying
:
CREATE TABLE ExampleTable (PriKey int PRIMARY KEY, VarCharCol national character varying(10))
VarCharCol
se asigna a un tipo de datos nvarchar(10) y todas las funciones de metadatos posteriores informan de la columna como columna nvarchar(10). Las funciones de metadatos nunca informarán de ellos como columna national character varying(10).