Kiểu dữ liệu INT trong SQL Server

Trong hướng dẫn này, bạn sẽ tìm hiểu về các kiểu dữ liệu số nguyên và cách sử dụng chúng một cách hiệu quả để lưu trữ các giá trị số nguyên trong SQL Server.

SQL Server hỗ trợ các kiểu số nguyên SQL tiêu chuẩn bao gồm BIGINT, INT, SMALLINTTINYINT. Bảng sau minh họa phạm vi và lưu trữ của mỗi kiểu số nguyên:

Kiểu dữ liệuPhạm viLưu trữ
BIGINT-263 (-9,223,372,036,854,775,808) to 263-1 (9,223,372,036,854,775,807)8 Bytes
INT-231 (-2,147,483,648) to 231-1 (2,147,483,647)4 Bytes
SMALLINT-215 (-32,768) to 215-1 (32,767)2 Bytes
TINYINT0 to 2551 Byte

Một phương pháp hay là sử dụng kiểu dữ liệu số nguyên nhỏ nhất có thể chứa tất cả các giá trị có thể một cách đáng tin cậy. Ví dụ, để lưu trữ số con trong một gia đình, TINYINT là đủ vì ngày nay không ai có thể có nhiều hơn 255 con. Tuy nhiên, TINYINT sẽ không đủ để lưu trữ các phòng của một tòa nhà vì một tòa nhà có thể có hơn 255 phòng.

Ví dụ về số nguyên trong SQL Server

Câu lệnh sau tạo một bảng mới bao gồm bốn cột kiểu số nguyên:

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

Câu lệnh INSERT sau đây thêm các số nguyên tối đa của kiểu BIGINT, INT, SMALLINT, and TINYINT vào các cột tương ứng của bảng:

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

Để hiển thị các giá trị được lưu trữ trong bảng test.sql_server_integers, bạn sử dụng câu lệnh SELECT sau:

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

Chuyển đổi kiểu dữ liệu số nguyên

SQL Server chuyển đổi hằng số nguyên lớn hơn 2,147,483,647 thành kiểu dữ liệu DECIMAL, không phải kiểu dữ liệu BIGINT như trong ví dụ sau:

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

Ví dụ truy vấn cho thấy khi giá trị bị vượt quá ngưỡng, kiểu dữ liệu của kết quả đã thay đổi từ kiểu INT thành kiểu DECIMAL.

Trong hướng dẫn này, bạn đã học các kiểu dữ liệu số nguyên khác nhau trong SQL Server và cách sử dụng chúng để lưu trữ số nguyên trong cơ sở dữ liệu.

SQL ServerKiểu dữ liệu trong SQL Server
Bài Viết Liên Quan:
GUID trong SQL Server
Trung Nguyen 12/03/2022
GUID trong SQL Server

Trong hướng dẫn này, bạn sẽ tìm hiểu về GUID trong SQL Server và cách sử dụng hàm NEWID() để tạo giá trị GUID.

Kiểu dữ liệu DATETIMEOFFSET trong SQL Server
Trung Nguyen 12/03/2022
Kiểu dữ liệu DATETIMEOFFSET trong SQL Server

Trong hướng dẫn này, bạn sẽ học cách sử dụng kiểu dữ liệu DATETIMEOFFSET trong SQL Server để thao tác datetime với múi giờ.

Kiểu dữ liệu TIME trong SQL Server
Trung Nguyen 12/03/2022
Kiểu dữ liệu TIME trong SQL Server

Trong hướng dẫn này, bạn sẽ học cách lưu trữ thời gian trong ngày trong cơ sở dữ liệu bằng cách sử dụng kiểu dữ liệu TIME trong SQL Server.

Kiểu dữ liệu DATE trong SQL Server
Trung Nguyen 12/03/2022
Kiểu dữ liệu DATE trong SQL Server

Trong hướng dẫn này, bạn sẽ học cách sử dụng kiểu dữ liệu DATE trong SQL Server để lưu trữ dữ liệu ngày tháng trong một bảng.