Các kiểu dữ liệu trong SQL Server

Hãy cùng Osuai tìm hiểu về Các kiểu dữ liệu trong SQL Server

Dưới đây là các kiểu dữ liệu (loại dữ liệu) trong SQL Server, gồm chuỗi kí tự, số và thời gian/ngày tháng.

Kiểu dữ liệu chuỗi kí tự trong SQL Server

Dưới đây là các kiểu dữ liệu thuộc nhóm chuỗi kí tự trong SQL Server (Transact-SQL).

Cú pháp kiểu dữ liệu Kích thước tối đa Giải thích
CHAR(kich_thuoc)Tối đa 8000 kí tự.
  • kich_thuoc là số kí tự lưu trữ.
  • Độ dài cố định.
  • Thêm dấu cách về bên phải để bù phần trống cho đủ số kí tự.
  • Không chứa kí tự Unicode.
VARCHAR(kich_thuoc) hoặc VARCHAR(toi_da)Tối đa 8000 kí tự hoặc theo số tối đa.
  • kich_thuoc là số kí tự lưu trữ.
  • Độ dài tùy biến.
  • Nếu chỉ định là toi_da thì tối đa là 2GB.
  • Không chứa kí tự Unicode.
TEXTTối đa 2GB.
  • Độ dài tùy biến.
  • Không chứa kí tự Unicode.
NCHAR(kich_thuoc)Tối đa 4000 kí tự.
  • Độ dài cố định.
  • Kí tự Unicode.
NVARCHAR(kich_thuoc) hoặc NVARCHAR(toi_da)Tối đa 4000 kí tự hoặc theo số tối đa.
  • kich_thuoc là số kí tự lưu trữ.
  • Độ dài tùy biến.
  • Nếu số toi_da được chi định thì số kí tự tối đa là 2GB.
  • Kí tự Unicode.
NTEXTTối đa 1.073.741.823 byte.
  • Độ dài tùy biến.
  • Kí tự Unicode.
BINARY(kich_thuoc)Tối đa 8000 kí tự.
  • kich_thuoc là số kí tự lưu trữ.
  • Độ dài cố định.
  • Thêm dấu cách để bù phần trống cho đủ số kí tự.
  • Dữ liệu nhị phân.
VARBINARY(kich_thuoc) hoặc VARBINARY(toi_da)Tối đa 8000 kí tự hoặc theo số tối đa.
  • kich_thuoc là số kí tự lưu trữ.
  • Độ dài tùy biến.
  • Nếu chỉ định là toi_da thì tối đa là 2GB.
  • Dữ liệu nhị phân.
IMAGEkích thước tối đa là 2GB.
  • Độ dài tùy biến.
  • Dữ liệu nhị phân.
Có thể bạn quan tâm:  Đầu số 0162, 0163, 0164, 0165, 0166, 0167, 0168, 0169 đổi thành đầu số gì?

Kiểu dữ liệu trong SQL

Kiểu dữ liệu dạng số trong SQL Server

Dưới đây là danh sách các kiểu dữ liệu thuộc dạng số trong SQL Server (Transact-SQL).

Cú pháp kiểu dữ liệu Kích thước tối đa Giải thích
BITsố nguyên 0, 1 hoặc NULL
TINYINTtừ 0 đến 255
SMALLINTtừ -32768 đến 32767
INT-2,147,483,648 đến 2,147,483,647
BIGINTtừ -9,223,372,036,854,775,808 đến 9,223,372,036,854,775,807
DECIMAL(m,d)
  • m mặc định là 18 nếu không được chỉ định cụ thể.
  • d mặc định là 0 nếu không được chỉ định cụ thể.
m là tổng số lượng các số còn d là số lượng các số nằm sau dấu phẩy.
DEC(m,d)
  • m mặc định là 18 nếu không được chỉ định cụ thể.
  • d mặc định là 0 nếu không được chỉ định cụ thể.

m là tổng số lượng các số còn d là số lượng các số nằm sau dấu phẩy.

Đồng nghĩa với kiểu dữ liệu DECIMAL.

NUMERIC(m,d)
  • m mặc định là 18 nếu không được chỉ định cụ thể.
  • d mặc định là 0 nếu không được chỉ định cụ thể.

m là tổng số lượng các số còn d là số lượng các số nằm sau dấu phẩy.

Đồng nghĩa với kiểu dữ liệu DECIMAL.

FLOAT(n)số dấu phẩy động n mặc định là 53 nếu không được chỉ định cụ thể.n là số lượng của số bit lưu trữ trong một kí hiệu hóa học.
REALtương đương với FLOAT(24)
SMALLMONEYtừ – 214,748.3648 đến 214,748.3647
MONEYtừ -922,337,203,685,477.5808 đến 922,337,203,685,477.5807

Kiểu dữ liệu ngày tháng/thời gian trong SQL Server

Dưới đây là danh sách các kiểu dữ liệu ngày tháng/thời gian trong SQL Server (Transact-SQL)

Cú pháp kiểu dữ liệuKích thước tối đaGiải thích
DATEgiá trị từ ‘0001-01-01’ đến ‘9999-12-31.hiển thị dưới dạng ‘YYYY-MM-DD’
DATETIME
  • Ngày lấy từ ‘1753-01-01 00:00:00’ to ‘9999-12-31 23:59:59’.
  • Giờ lấy từ ’00:00:00′ to ’23:59:59:997′
hiển thị dưới dạng ‘YYYY-MM-DD hh:mm:ss[.mmm]
DATETIME2(chính xác tới số thập phân của giây)
  • giá trị lấy từ ‘0001-01-01’ đến ‘9999-12-31’.
  • Thời gian lấy từ ’00:00:00′ đến ’23:59:59:9999999′.
hiển thị dưới dạng ‘YYYY-MM-DD hh:mm:ss[.số giây thập phân]’
SMALLDATETIME
  • giá trị lấy từ ‘1900-01-01’ đến ‘2079-06-06’.
  • Thời gian lấy từ ’00:00:00′ đến ’23:59:59′.
hiển thị dưới dạng ‘YYYY-MM-DD hh:mm:ss
TIME
  • giá trị lấy từ ’00:00:00.0000000′ đến ’23:59:59.9999999′.
  • Ngày lấy từ ‘0001-01-01’ đến ‘9999-12-31’.
hiển thị dưới dạng ‘YYYY-MM-DD hh:mm:ss[.nnnnnnn]’
DATETIMEOFFSET (chính xác tới số thập phân của giây)
  • giá trị thời gian lấy từ ’00:00:00′ đến ’23:59:59:9999999′.
  • Múi giờ lấy từ -14:00 đến +14:00.
hiển thị dưới dạng YYYY-MM-DD hh:mm:ss[.nnnnnnn]’ [{+|-}hh:mm]

Bài trước: Mệnh đề PIVOT trong SQL Server

Bài sau: Lệnh CREATE TABLE trong SQL Server

Tags: Các kiểu dữ liệu trong SQL Server, Các kiểu dữ liệu trong SQL Server, Các kiểu dữ liệu trong SQL Server