English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Las siguientes secciones describen los tipos de datos admitidos por SQL Server.
Los tipos de datos admitidos por Microsoft SQL Server se pueden dividir en tres categorías principales:Cadenas,NúmerosyFecha/TiempoLos tipos de datos.
Los tipos de datos de cadena se utilizan generalmente para almacenar nombres, direcciones, descripciones o cualquier valor que contenga letras y números, incluyendo datos binarios, como imágenes o archivos de audio.
Tipo de datos | Descripción |
---|---|
char(n) | almacenar cadenas de longitud fija. La longitud máxima es8,000 caracteres. |
varchar(n) | almacenar cadenas de longitud variable. La longitud máxima es8,000 caracteres. |
varchar(max) | almacenar cadenas de longitud variable. Aquí, max indica el tamaño máximo de almacenamiento de2 GB. |
text | almacenar cadenas de longitud variable. El tamaño máximo de almacenamiento es2 GB. |
nchar | almacenar cadenas de caracteres Unicode de longitud fija. La longitud máxima es4,000 caracteres. |
nvarchar | almacenar cadenas de caracteres Unicode variables. La longitud máxima es4,000 caracteres. |
nvarchar(max) | almacenar cadenas de caracteres Unicode variables. Aquí, max indica el tamaño máximo de almacenamiento de2 GB. |
ntext | almacenar cadenas de caracteres Unicode variables. El tamaño máximo de almacenamiento es2 GB. |
binary(n) | almacenar datos binarios de longitud fija. El tamaño máximo de almacenamiento es8,000 bytes. |
varbinary(n) | Almacena datos binarios de longitud variable. El tamaño máximo de almacenamiento es8,000 bytes. |
varbinary(max) | Almacena datos binarios de longitud variable. Aquí, max indica que el tamaño máximo de almacenamiento es2 GB. |
image | Almacena datos binarios de longitud variable. El tamaño máximo de almacenamiento es8,000 bytes. |
Los tipos de datos numéricos se utilizan comúnmente para almacenar datos como precios, salarios, etc.
Tipo de datos | Descripción |
---|---|
bit | permite almacenar valores1、0 oNULL。 |
tinyint | Almacena valores de 0 a255y |
entre | Almacena valores enteros en el rango-32,768hasta32,767int |
smallint | Almacena valores enteros en el rango-2,147,483,648hasta2,147,483,647int |
bigint | Almacena valores enteros en el rango-9,223,372,036,854,775,808hasta9,223,372,036,854,775,807enteros. Los valores válidos son |
decimal(p,s) | Almacena precisión fija y número de decimales. Los valores válidos son10 ^38 +1hasta10 |
numeric(p,s) | El tipo de datos numeric es funcionalmente equivalente a decimal. |
smallmoney | permite almacenar valores monetarios o valores monetarios con un rango de-214,748.3648y214,748.3647。 |
money | permite almacenar valores monetarios o valores monetarios con un rango de-922,337,203,685,477.5808y922,337,203,685,477.5807。 |
float(n) | Almacena valores de números en coma flotante. Los valores válidos son-1.79E + 308y-2.23E-308、0 y2.23E-308y1.79E + 308。 |
real | Almacena valores de números en coma flotante. Los valores válidos son-3.40E + 38y-1.18E-38、0 y1.18E-38y3.40E + 38。 |
al declarar una columna decimal o numeric, se puede especificar la precisión y el número de decimales, como decimal(p, s) o numeric(p, s), donde p o precisión representa el número máximo de dígitos que se pueden almacenar, incluyendo a la izquierda y a la derecha del punto decimal. La precisión debe estar entre1hasta38valores. La precisión predeterminada es18。
mientrasso scale indica el número máximo de dígitos que se pueden almacenar a la derecha del punto decimal. Reste este número de p para determinar el número máximo de dígitos a la izquierda del punto decimal. El número de decimales debe ser un valor entre 0 y p. El valor predeterminado es 0.
Por ejemplo, price decimal(6,2) puede almacenar cualquier valor con seis dígitos y dos decimales, es decir-9999.99hasta9999.99valores entre
El tipo de datos de fecha y hora se utiliza comúnmente para almacenar datos, como la fecha de nacimiento, la fecha de empleo, la fecha y hora en que se crea o actualiza un registro en una tabla, etc.
Tipo de datos | Descripción |
---|---|
date | Almacena valores de fechas con un rango de 0001-01-01(1Mes1día,1mes) hasta 9999-12-31(9999Año12Mes31Día). |
time | Almacena el tiempo del día con precisión100 nanosegundos. Los valores válidos van de 00:00:00.0000000 a23:59:59.9999999。 |
datetime | Almacena combinaciones de fechas y horas con precisión3.33milisegundos. El rango de fechas válidas para datetime es desde1753-01-01(1753Año1Mes1Día) hasta9999-12-31(9999Año12Mes31Día). |
datetime2 | datetime2Es una extensión del tipo de datos datetime, que tiene un rango de fechas más amplio. datetime2El rango de fechas válidas es desde 0001-01-01 (Enero 1, 1) hasta9999-12-31 (Diciembre 31, 9999)。 |
smalldatetime | con1Valores de fechas y horas combinados con precisión de minutos. El rango de fechas válidas para smalldatetime es desde1900-01-01(1900 años1Mes1Día) hasta 2079-06-06(2079Año6Mes6Día). |
datetimeoffset | Con datetime2Agregar el mismo desplazamiento de zona horaria. El formato predeterminado es YYYY-MM-DD hh:mm:ss[.nnnnnnn] [{+|-La gama válida de desplazamiento de zona horaria es-14:00 hasta+14:00。 |
timestamp | En SQL Server, timestamp es sinónimo de tipo de datos rowversion, que genera automáticamente un número binario único en la base de datos. rowversion se utiliza generalmente como marca de versión de las filas de la tabla. |
Atención:Cada vez que se inserta o modifica una fila en una tabla que tenga una columna rowversion, el valor incremental de rowversion de la base de datos se inserta en la columna rowversion. Una tabla solo puede tener una columna rowversion.