Tipos de datos de SQL Server con ejemplos
ยฟQuรฉ es el tipo de datos?
A Tipo de datos en SQL server se define como el tipo de datos que cualquier columna o variable puede almacenar. Es un tipo de datos que contiene un objeto como un nรบmero entero, un carรกcter, una cadena, etc. Al crear cualquier tabla o variable, ademรกs de especificar el nombre, tambiรฉn establece el tipo de datos que almacenarรก.
Cรณmo utilizar el tipo de datos MS SQL
- Debe definir de antemano el tipo de datos que puede almacenar una columna o variable. La determinaciรณn del tipo de datos tambiรฉn impide que el usuario ingrese datos inesperados o no vรกlidos.
- Puede hacer un uso eficiente de la memoria asignando un tipo de datos apropiado a la variable o columna que asignarรก solo la cantidad requerida de memoria del sistema para los datos de la columna respectiva.
- MS SQL ofrece una amplia categorรญa de tipos de datos bรกsicos en SQL segรบn las necesidades del usuario, como fecha, imรกgenes binarias, etc.
ยฟPor quรฉ utilizar tipos de datos?
Tomemos una muestra de Pรกgina de registro de la aplicaciรณn del sitio web. Tres campos de entrada son Nombre, Apellido y Nรบmero de contacto.
Aquรญ debemos tener en cuenta que en tiempo real:
- "Primer apellido" siempre serรก alfabรฉtico.
- "Contacto" siempre serรก numรฉrico.

- De la imagen de arriba vale la pena definir "Primer apellido" como herramienta de ediciรณn del personaje y "Contacto" como una entero.
Es evidente que en cualquier aplicaciรณn, todos los campos tienen uno u otro tipo de datos. Por ejemplo, numรฉrico, alfabรฉtico, fecha y muchos mรกs.
Ademรกs, tenga en cuenta que diferentes tipos de datos tienen diferentes requisitos de memoria. Por lo tanto, tiene mรกs sentido definir la columna o variable con el tipo de datos que contendrรก para un uso eficiente de la memoria.
Tipo de datos disponibles en MS SQL Server
Aquรญ estรก la lista de tipos de datos del servidor MS SQL:
Servidor MS SQL Admite las siguientes categorรญas de tipos de datos:
- numรฉrico exacto
- numรฉrico aproximado
- Fecha y hora
- Cadenas de caracteres
- Cadenas de caracteres Unicode
- cadenas binarias
- Otros tipos de datos
Tipos de datos numรฉricos exactos en SQL
El nรบmero exacto tiene nueve tipos de subtipos de datos en el servidor SQL.
Tipos de datos numรฉricos exactos
| Tipo de datos | Descripciรณn | Lรญmite inferior | Limite superior | Salud Cerebral |
|---|---|---|---|---|
| Empezando | Almacena nรบmeros enteros en el rango dado | โ2^63 (โ9,223,372) | 2^63โ1 (โ9,223,372, 036,854,775,807) | Bytes 8 |
| int | Almacena nรบmeros enteros en el rango dado | โ2^31 (โ2,147) | 2^31โ1 (โ2,147, 483,647) | Bytes 4 |
| letra pequeรฑa | Almacena nรบmeros enteros en el rango dado | โ2^15 (โ32,767) | 2^15 (-32,768) | Bytes 2 |
| diminuto | Almacena nรบmeros enteros en el rango dado | 0 | 255 | Bytes 1 |
| bit | Puede tomar valores 0, 1 o NULL. | 0 | 1 | Columna de 1 byte/8 bits |
| decimal | Se utiliza para escalas y nรบmeros de precisiรณn fija. | โ10^38+1 | 10^381-1 | 5 a 17 bytes |
| numรฉrico | Se utiliza para escalas y nรบmeros de precisiรณn fija. | โ10^38+1 | 10^381-1 | 5 a 17 bytes |
| dinero | Datos monetarios usados | โ922,337, 203, 685,477.5808 | +922,337, 203, 685,477.5807 | Bytes 8 |
| poco dinero | Datos monetarios usados | -214,478.3648 | +214,478.3647 | Bytes 4 |
Tipos de datos numรฉricos exactos en Servidor SQL con ejemplos:
consulta:
DECLARE @Datatype_Int INT = 2 PRINT @Datatype_Int
Salida
2
Sintaxis
decimales (P,S)
Aquรญ,
- P es precisiรณn
- S es escala
consulta:
DECLARE @Datatype_Decimal DECIMAL (3,2) = 2.31 PRINT @Datatype_Decimal
Salida
2.31
Tipos de datos numรฉricos aproximados en SQL
SQL La categorรญa numรฉrica aproximada incluye valores reales y de punto flotante. Estos tipos de datos en SQL se utilizan principalmente en cรกlculos cientรญficos.
Tipo de datos numรฉricos aproximados
| Tipo de datos | Descripciรณn | Lรญmite inferior | Limite superior | Salud Cerebral | Precisiรณn |
|---|---|---|---|---|---|
| flotador (n) | Se utiliza para un nรบmero de precisiรณn flotante. | โ1.79E+308 | 1.79E + 308 | Depende del valor de n | 7 Digit |
| real | Se utiliza para un nรบmero de precisiรณn flotante. | โ3.40E+38 | 3.40E + 38 | Bytes 4 | 15 Digit |
Syntax: FLOAT [(n)]
Aquรญ, n es el nรบmero de bits que se utilizan para almacenar la mantisa del flotar nรบmero en notaciรณn cientรญfica. Por defecto, el valor de n es 53.
Cuando el usuario define un tipo de datos como float, n debe ser un valor entre 1 y 53.
Delicias de SQL Server n como uno de dos valores posibles. Si 1<=n<=24, n se trata como 24. Si 25<=n<=53, n se trata como 53.
Consulta de ejemplo:
DECLARE @Datatype_Float FLOAT(24) = 22.1234 PRINT @Datatype_Float
Salida
22.1234
Tipos de datos de fecha y hora en SQL
Almacena datos de tipo Fecha y hora.
Tipo de datos de fecha y hora
| Tipo de datos | Descripciรณn | Tamaรฑo de almacenamiento | Exactitud | Rango inferior | Rango superior |
|---|---|---|---|---|---|
| DateTime | Se utiliza para especificar una fecha y hora desde el 1 de enero de 1753 hasta el 31 de diciembre de 9999. Tiene una precisiรณn de 3.33 milisegundos. | Bytes 8 | Redondeado a incrementos de 000, 003, 007 | 1753-01-01 | 9999-12-31 |
| hora pequeรฑa | Se utiliza para especificar una fecha y hora desde el 1 de enero de 0001 hasta el 31 de diciembre de 9999. Tiene una precisiรณn de 100 nanosegundos. | 4 bytes, fijo | 1 minuto | 1900-01-01 | 2079-06-06 |
| datos | Se utiliza para almacenar รบnicamente la fecha del 1 de enero de 0001 al 31 de diciembre de 9999. | 3 bytes, fijo | 1 dรญa | 0001-01-01 | 9999-12-31 |
| time | Se utiliza para almacenar รบnicamente valores de tiempo con una precisiรณn de 100 nanosegundos. | Bytes 5 | 100 nanosegundos | 00:00:00.0000000 | 23:59:59.9999999 |
| desplazamiento de fecha y hora | Similar a datatime pero tiene un desplazamiento de zona horaria | Bytes 10 | 100 nanosegundos | 0001-01-01 | 9999-12-31 |
| fechahora2 | Se utiliza para especificar una fecha y hora desde el 1 de enero de 0001 hasta el 31 de diciembre de 9999. | Bytes 6 | 100 nanosegundos | 0001-01-01 | 9999-12-31 |
Consulta de ejemplo:
DECLARE @Datatype_Date DATE = '2030-01-01' PRINT @Datatype_Date
Salida
'2030-01-01'
Tipos de datos de cadenas de caracteres en SQL
Esta categorรญa estรก relacionada con un tipo de personaje. Permite al usuario definir el tipo de datos de carรกcter que puede ser de longitud fija y variable. Tiene cuatro tipos de tipos de datos. A continuaciรณn se muestran los tipos de datos del servidor SQL de cadena de caracteres con ejemplos.
Tipos de datos de cadenas de caracteres
| Tipo de datos | Descripciรณn | Lรญmite inferior | Limite superior | Salud Cerebral |
|---|---|---|---|---|
| tanque | Es una cadena de caracteres con un ancho fijo. Almacena un mรกximo de 8,000 caracteres. | 0 caracteres | 8000 caracteres | nbytes |
| varchar | Esta es una cadena de caracteres con ancho variable. | 0 caracteres | 8000 caracteres | n bytes + 2 bytes |
| varchar (mรกximo) | Esta es una cadena de caracteres con un ancho variable. Almacena un mรกximo de 1,073,741,824 caracteres. | 0 caracteres | 2^31 caracteres | n bytes + 2 bytes |
| texto | Esta es una cadena de caracteres con un ancho variable. Almacena un mรกximo de 2 GB de datos de texto. | 0 caracteres | 2,147,483,647 caracteres | n bytes + 4 bytes |
Consulta de ejemplo:
DECLARE @Datatype_Char VARCHAR(30) = 'This is Character Datatype' PRINT @Datatype_Char
Salida
Este es el tipo de datos de carรกcter
Tipos de datos de cadenas de caracteres Unicode en SQL
Esta categorรญa almacena la gama completa de caracteres Unicode que utilizan la codificaciรณn de caracteres UTF-16.
Tipos de datos de cadenas de caracteres Unicode
| Tipo de datos | Descripciรณn | Lรญmite inferior | Limite superior | Salud Cerebral |
|---|---|---|---|---|
| nchar | Es una cadena Unicode de ancho fijo. | 0 caracteres | 4000 caracteres | 2 veces n bytes |
| nvarchar | Es una cadena Unicode de ancho variable. | 0 caracteres | 4000 caracteres | 2 veces n bytes + 2 bytes |
| ntext | Es una cadena Unicode de ancho variable. | 0 caracteres | 1,073,741,823 caracteres | 2 veces la longitud de la cuerda |
Consulta de ejemplo:
DECLARE @Datatype_nChar VARCHAR(30) = 'This is nCharacter Datatype' PRINT @Datatype_nChar
Salida
Este es el tipo de datos nCharacter
Tipos de datos de cadenas binarias en SQL
Esta categorรญa contiene una cadena binaria de longitud fija y variable.
Tipos de datos de cadenas binarias
| Tipo de datos | Descripciรณn | Lรญmite inferior | Limite superior | Salud Cerebral |
|---|---|---|---|---|
| binario | Es una cadena binaria de ancho fijo. Almacena un mรกximo de 8,000 bytes. | Bytes 0 | Bytes 8000 | nbytes |
| varbinary | Esta es una cadena binaria de ancho variable. Almacena un mรกximo de 8,000 bytes. | Bytes 0 | Bytes 8000 | La longitud real de los datos ingresados โโ+ 2 bytes |
| imagen | Esta es una cadena binaria de ancho variable. Almacena un mรกximo de 2GB. | Bytes 0 | Bytes 2,147,483,647 |
Consulta de ejemplo:
DECLARE @Datatype_Binary BINARY(2) = 12; PRINT @Datatype_Binary
Salida
0x000C
Otros tipos de datos en SQL
Estos son otros tipos de datos de servidor SQL diferentes con la descripciรณn a continuaciรณn:
| Tipo de datos | Descripciรณn |
|---|---|
| Cursor | Su salida es una columna de sp_cursor_list y sp_describe_cursor. Devuelve el nombre de la variable del cursor. |
| Versiรณn de fila | Su versiรณn estampa filas de la tabla. |
| Jerarquรญa | Este tipo de datos representa una posiciรณn en la jerarquรญa. |
| Identificador รบnico | Conversiรณn de una expresiรณn de carรกcter. |
| sql_variante | Almacena valores de tipos de datos compatibles con el servidor SQL. |
| XML | Almacena datos XML en una columna. |
| Tipo de geometrรญa espacial | Representa datos en un sistema de coordenadas plano. |
| Tipo de geografรญa espacial | Representa datos en el sistema de coordenadas de la Tierra redonda. |
| mesa | Almacena un conjunto de resultados para su procesamiento posterior. |
ยกDatos interesantes!
- tipo de datos CAR es mรกs rรกpido que el tipo de datos SQL VARCHAR al recuperar datos.
Resumen
- Cada columna de las tablas se define con su tipo de datos durante la creaciรณn de la tabla.
- Hay seis categorรญas principales y otra categorรญa miscelรกnea. Otras miscelรกneas tienen nueve subcategorรญas de Servidor SQL tipos y tamaรฑos de datos disponibles.
