SQL

Tipos de datos de números enteros de SQL Server

Estrada Web Group
Estrada Web Group
Tipos de datos de números enteros de SQL Server

Resumen: en este tutorial, aprenderás sobre los tipos de datos enteros y cómo usarlos de manera efectiva para almacenar valores enteros en la base de datos.

Introducción a los tipos enteros de SQL Server

SQL Server admite tipos enteros de SQL estándar, incluidos BIGINT, INT, SMALLINT y TINYINT. La siguiente tabla ilustra el rango y el almacenamiento de cada tipo de entero:

  • BIGINT. Rango: -263 (-9,223,372,036,854,775,808) to 263-1 (9,223,372,036,854,775,807); Almacenamiento: 8 Bytes.
  • INT. Rango: -231 (-2,147,483,648) to 231-1 (2,147,483,647); Almacenamiento: 4 Bytes.
  • SMALLINT. Rango: -215 (-32,768) to 215-1 (32,767); Almacenamiento: 2 Bytes.
  • TINYINT. Rango: 0 a 255; Almacenamiento: 1 Byte.

Es una buena práctica usar el tipo de datos entero más pequeño que pueda contener de manera confiable todos los valores posibles. Por ejemplo, para almacenar el número de hijos de una familia, TINYINT es suficiente porque hoy en día nadie puede tener más de 255 hijos. Sin embargo, TINYINT no sería suficiente para almacenar los departamentos u oficinas de un edificio porque un edificio puede tener más de 255 departamentos u oficinas.

Ejemplo de enteros en SQL Server

La siguiente declaración crea una nueva tabla que consta de cuatro columnas de enteros:
 

CREATE TABLE test.sql_server_integers (
            bigint_col bigint,
            int_col INT,
            smallint_col SMALLINT,
            tinyint_col tinyint
);

La siguiente declaración INSERT agrega los enteros máximos de BIGINT, INT, SMALLINT y TINYINT a las columnas correspondientes de la tabla:
 

INSERT INTO test.sql_server_integers (
  bigint_col,
  int_col,
  smallint_col,
  tinyint_col
)
VALUES
(
  9223372036854775807,
  2147483647,
  32767,
  255
);


Para mostrar los valores almacenados en la tabla test.sql_server_integers, ejecuta la siguiente instrucción SELECT:

SELECT
            bigint_col,
            int_col,
            smallint_col,
            tinyint_col
FROM
            test.sql_server_integers;


Convertir datos enteros

SQL Server convierte la constante entera mayor que 2,147,483,647 al tipo de datos DECIMAL, no al tipo de datos BIGINT, como se muestra en el siguiente ejemplo:
 

SELECT 2147483647 / 3 AS r1,
               2147483649 / 3 AS r2;

El ejemplo de consulta mostró que cuando se excedía el valor del umbral, el tipo de datos del resultado cambiaba de INT a DECIMAL.

En este tutorial, aprendiste varios tipos de datos enteros de SQL Server y cómo usarlos para almacenar enteros en la base de datos.
 

 

Compartir artículo:

Más artículos geniales

¿Cómo convertir un valor de código ASCII en un carácter en SQL con la función CHAR?

¿Cómo convertir un valor de código ASCII en un carácter en SQL con la función CHAR?

En este tutorial, aprenderá cómo usar la función CHAR() de SQL Server para convertir un valor de código ASCII en un carácter.

Ver artículo completo
¿Qué hace el operador Except en SQL?

¿Qué hace el operador Except en SQL?

Resumen: en este tutorial aprenderás a usar el operador EXCEPT de SQL Server que encuentra la diferencia entre dos consultas y el resultado regresa las filas que pertenecen únicamente a la primera consulta.

Ver artículo completo
¿Cómo filtar registos con una subconsulta usando el operador ALL de SQL Server?

¿Cómo filtar registos con una subconsulta usando el operador ALL de SQL Server?

Resumen: en este tutorial, aprenderás a usar el operador ALL de SQL Server para comparar un valor con una lista de conjuntos de valores de una columna.

Ver artículo completo

Manténgase actualizado

Obtenga excelente contenido en su bandeja de entrada todas las semanas.
Solo contenido excelente, no compartimos su correo electrónico con terceros.
Subir al inicio de la pantalla