Các kiểu dữ liệu trong SQL Server
Các kiểu dữ liệu trong SQL khá đa dạng. Hãy cùng Quantrimang.com tìm hiểu các kiểu dữ liệu, bao gồm cả numeric trong SQL nhé!
Trong SQL Server, mỗi cột, biến cục bộ, biểu thức và tham số đều có một kiểu dữ liệu liên quan. Một kiểu dữ liệu là một thuộc tính xác định kiểu dữ liệu mà đối tượng có thể nắm giữ, bao gồm: dữ liệu số nguyên, ký tự, tiền tệ, ngày & thời gian, chuỗi nhị phân…
SQL Server cung cấp một tập hợp các kiểu dữ liệu hệ thống xác định tất cả các kiểu dữ liệu có thể được sử dụng với SQL Server. Bạn cũng có thể chỉ định các kiểu dữ liệu riêng trong Transact-SQL hoặc Microsoft.NET Framework.
Nhìn chung, datatype là một phân loại dữ liệu, cho trình biên dịch biết loại dữ liệu nào lập trình viên lưu trữ. Hầu hết ngôn ngữ lập trình đều hỗ trợ các kiểu dữ liệu khác nhau, chẳng hạn như số nguyên, ký tự hoặc chuỗi, Boolean…
Kiểu dữ liệu SQL Server là gì?
Datatype đảm bảo kiểu dữ liệu mà cột hoặc biến có thể lưu trữ trong SQL Server. Khi tạo bảng hoặc biến bất kỳ, nó yêu cầu xác định kiểu dữ liệu sẽ lưu ngoài tên của từng cột. Ví dụ, trong SQL Server, mỗi bảng có nhiều cột và chứa kiểu dữ liệu cụ thể cho từng cột. Chúng có thể là số nguyên, float, varchar, Boolean…
Cách dùng datatype?
Bạn cần xác định kiểu dữ liệu trước cho từng cột của một bảng để đảm bảo kiểu dữ liệu mà nó có thể lưu trữ. Cấu hình kiểu dữ liệu cũng ngăn người dùng nhập bất kỳ thông tin không hợp lệ hoặc không mong muốn.
Khi gán kiểu dữ liệu phù hợp cho một cột, bạn có thể tận dụng bộ nhớ hiệu quả bằng cách phân bổ chỉ một số lượng bộ nhớ hệ thống cần cho dữ liệu trong cột liên quan.
Bạn có thể dùng những đặc điểm sau để xác định kiểu dữ liệu trong SQL Server:
- Kiểu dữ liệu (cố định hoặc tùy biến) mà nó đại diện.
- Dung lượng lưu trữ tùy thuộc vào giá trị, có độ dài cố định hoặc biến thiên.
- Giá trị lưu trữ có thể được đánh chỉ mục hoặc không.
- Cách SQL Server triển khai một so sánh giá trị của một kiểu dữ liệu cụ thể.
Các kiểu dữ liệu trong SQL Server:
- String - Chuỗi
- Numeric - Số
- Date and Time - Ngày và thời gian
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ự. |
|
VARCHAR(kich_thuoc) hoặc VARCHAR(toi_da) | Tối đa 8000 kí tự hoặc theo số tối đa. |
|
TEXT | Tối đa 2GB. |
|
NCHAR(kich_thuoc) | Tối đa 4000 kí tự. |
|
NVARCHAR(kich_thuoc) hoặc NVARCHAR(toi_da) | Tối đa 4000 kí tự hoặc theo số tối đa. |
|
NTEXT | Tối đa 1.073.741.823 byte. |
|
BINARY(kich_thuoc) | Tối đa 8000 kí tự. |
|
VARBINARY(kich_thuoc) hoặc VARBINARY(toi_da) | Tối đa 8000 kí tự hoặc theo số tối đa. |
|
IMAGE | kích thước tối đa là 2GB. |
|
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 |
BIT | số nguyên 0, 1 hoặc NULL | |
TINYINT | từ 0 đến 255 | |
SMALLINT | từ -32768 đến 32767 | |
INT | -2,147,483,648 đến 2,147,483,647 | |
BIGINT | từ -9,223,372,036,854,775,808 đến 9,223,372,036,854,775,807 | |
DECIMAL(m,d) |
| 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 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 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. |
REAL | tương đương với FLOAT(24) | |
SMALLMONEY | từ - 214,748.3648 đến 214,748.3647 | |
MONEY | từ -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ệu | Kích thước tối đa | Giải thích |
DATE | giá trị từ '0001-01-01' đến '9999-12-31. | hiển thị dưới dạng ‘YYYY-MM-DD’ |
DATETIME |
| 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) |
| hiển thị dưới dạng 'YYYY-MM-DD hh:mm:ss[.số giây thập phân]' |
SMALLDATETIME |
| hiển thị dưới dạng 'YYYY-MM-DD hh:mm:ss |
TIME |
| 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) |
| hiển thị dưới dạng YYYY-MM-DD hh:mm:ss[.nnnnnnn]' [{+|-}hh:mm] |
Các kiểu dữ liệu khác trong SQL Server
Kiểu dữ liệu | Mô tả |
sql_variant | Chứa tới 8,000 byte dữ liệu của các kiểu khác nhau, ngoại trừ text, ntext, và timestamp |
uniqueidentifier | Lưu trữ một mã định danh duy nhất trên toàn cục (GUID) |
xml | Lưu trữ dữ liệu định dạng XML. Tối đa 2GB |
cursor | Lưu trữ một tham chiếu tới con trỏ được dùng cho các hoạt động database |
table | Lưu trữ một bộ kết quả để xử lý sau |
Bài trước: Mệnh đề PIVOT trong SQL Server
Bài sau: Lệnh CREATE TABLE trong SQL Server
Bạn nên đọc
-
Câu lệnh CASE trong SQL Server
-
Câu lệnh CURRENT_USER trong SQL Server
-
Hàm USER_NAME trong SQL Server
-
Khóa ngoại Foreign Key trong SQL Server
-
Cách khởi động và dừng các dịch vụ trong MS SQL Server
-
Hàm ROUND trong SQL Server
-
Kiểm tra thông tin phiên bản trong SQL Server
-
Mệnh đề GROUP BY trong SQL Server
-
Cách tạo bản sao dữ liệu trong MS SQL Server
- Dương Đình DẫnThích · Phản hồi · 7 · 23/03/21
Cũ vẫn chất
-
Last Name, First Name là gì? Cách điền chúng chính xác nhất
Hôm qua -
Tổng hợp code Đại Chiến Tam Quốc mới nhất
Hôm qua -
Code Kiếm Vương 1 - ADNX Mobile mới nhất
Hôm qua -
Hướng dẫn sửa lỗi Access Denied trong quá trình truy cập file hoặc thư mục trên Windows
Hôm qua -
Cách đổi màu phông nền trong Photoshop
Hôm qua -
Game ‘Khủng long mất mạng’ trên Google Chrome được 3D hóa tuyệt đẹp, mời trải nghiệm
Hôm qua -
Cách gán địa chỉ IP tĩnh trong Windows 11, 10, 8, 7, XP hoặc Vista
Hôm qua -
Code Mobile Legends mới nhất 12/2024
Hôm qua -
Cách dùng hàm IMPORTRANGE trong Google Sheets
Hôm qua -
Code Tân Vương 3Q mới nhất và cách nhập code
Hôm qua