SQL Server proporciona varios tipos de datos para almacenar números exactos. En este artículo, nos centraremos en los tipos de datos INT y BIGINT y compararemos su uso.
Tipo de datos INT
El tipo de datos INT es el tipo de datos más comúnmente utilizado en SQL Server. Es adecuado para almacenar números enteros en la mayoría de los casos de uso. El rango del tipo de datos INT es de -2,147,483,648 a 2,147,483,647. Utiliza 4 bytes de memoria de almacenamiento.
Aquí tienes un ejemplo de creación de una tabla con el tipo de datos INT:
CREATE TABLE EMPLOYEE_SALARY (
EMP_ID INT,
SALARY INT
)Para insertar un registro en la tabla:
INSERT INTO EMPLOYEE_SALARY (EMP_ID, SALARY)
VALUES (123, 5500)Para seleccionar registros de la tabla:
SELECT * FROM EMPLOYEE_SALARYTipo de datos BIGINT
El tipo de datos BIGINT se utiliza cuando necesitas almacenar números muy grandes. Puede almacenar números de hasta 9 quintillones. El rango del tipo de datos BIGINT es de -9,223,372,036,854,775,808 a 9,223,372,036,854,775,807. Utiliza 8 bytes de memoria de almacenamiento.
Aquí tienes un ejemplo de creación de una tabla con el tipo de datos BIGINT:
CREATE TABLE BIGINT_DEMO (
PLANET_NAME VARCHAR(20),
PLANET_AGE BIGINT
)Para insertar un registro en la tabla:
INSERT INTO BIGINT_DEMO
VALUES ('TIERRA', 4543000000)Para seleccionar registros de la tabla:
SELECT * FROM BIGINT_DEMODiferencias entre los tipos de datos INT y BIGINT
Cuando se convierten números enteros, si el número es mayor que 2,147,483,647, SQL Server lo convierte en el tipo de datos decimal en lugar del tipo de datos BIGINT.
Si tienes una columna entera en una tabla e intentas insertar un valor decimal, el valor se redondeará a un número entero.
Cuando se cambia el tipo de datos de una columna, si la columna es una clave primaria, no se puede cambiar directamente su tipo de datos. Sin embargo, puedes crear una nueva columna con el tipo de datos deseado, copiar los datos de la columna antigua a la nueva columna, eliminar la columna antigua y renombrar la nueva columna.
Conclusión
En este artículo, discutimos los tipos de datos INT y BIGINT en SQL Server y comparamos su uso. Es importante elegir el tipo de datos adecuado en función de los requisitos de tu aplicación. El tipo de datos INT es adecuado para la mayoría de los casos de uso, mientras que el tipo de datos BIGINT se utiliza para almacenar números muy grandes.