Các kiểu dữ liệu máy chủ SQL kèm ví dụ
Kiểu dữ liệu là gì?
A Loại dữ liệu trong máy chủ SQL được định nghĩa là loại dữ liệu mà bất kỳ cột hoặc biến nào cũng có thể lưu trữ. Nó là một loại dữ liệu mà một đối tượng chứa như số nguyên, ký tự, chuỗi, v.v. Trong khi tạo bất kỳ bảng hoặc biến nào, ngoài việc chỉ định tên, bạn còn đặt Loại dữ liệu mà nó sẽ lưu trữ.
Cách sử dụng kiểu dữ liệu MS SQL
- Bạn cần xác định trước loại dữ liệu mà một cột hoặc biến có thể lưu trữ. Việc xác định loại dữ liệu cũng hạn chế người dùng nhập bất kỳ dữ liệu không mong muốn hoặc không hợp lệ nào.
- Bạn có thể sử dụng bộ nhớ hiệu quả bằng cách gán kiểu dữ liệu thích hợp cho biến hoặc cột sẽ chỉ phân bổ lượng bộ nhớ hệ thống cần thiết cho dữ liệu của cột tương ứng.
- MS SQL cung cấp nhiều loại dữ liệu cơ bản trong SQL theo nhu cầu của người dùng như Ngày, hình ảnh nhị phân, v.v.
Tại sao nên sử dụng DataTypes?
Hãy lấy một mẫu đơn giản Trang đăng ký của ứng dụng trang web.Ba trường nhập là Tên, Họ và Số liên hệ.
Ở đây chúng ta cần lưu ý rằng trong thời gian thực:
- “Họ/Tên” sẽ luôn là bảng chữ cái.
- "Tiếp xúc" sẽ luôn là số.
- Từ hình ảnh trên, đáng để xác định “Họ/Tên” như là một tính cách và "Tiếp xúc" như một số nguyên.
Rõ ràng là trong bất kỳ ứng dụng nào, tất cả các trường đều có một hoặc loại dữ liệu khác. Ví dụ: số, chữ cái, ngày tháng và nhiều thứ khác.
Ngoài ra, hãy lưu ý rằng kiểu dữ liệu khác nhau có yêu cầu bộ nhớ khác nhau. Vì vậy, sẽ hợp lý hơn khi xác định cột hoặc biến với kiểu dữ liệu nó sẽ giữ để sử dụng bộ nhớ hiệu quả.
Kiểu dữ liệu có sẵn trong MS SQL Server
Đây là danh sách kiểu dữ liệu máy chủ MS SQL:
Máy chủ MSSQL hỗ trợ các loại Kiểu dữ liệu sau:
- Số chính xác
- Số gần đúng
- Ngày và thời gian
- Chuỗi ký tự
- Chuỗi ký tự Unicode
- Chuỗi nhị phân
- Các kiểu dữ liệu khác
Các kiểu dữ liệu số chính xác trong SQL
Số chính xác có chín loại dữ liệu phụ trong máy chủ SQL.
Các kiểu dữ liệu số chính xác
Loại dữ liệu | Mô tả | Giơi hạn dươi | Giới hạn trên | Bộ nhớ |
---|---|---|---|---|
cố chấp | Nó lưu trữ toàn bộ số trong phạm vi nhất định | −2^63 (−9,223,372, 036,854,775,808) | 2^63−1 (−9,223,372, 036,854,775,807) | 8 byte |
int | Nó lưu trữ toàn bộ số trong phạm vi nhất định | −2^31 (−2,147, 483,648) | 2^31−1 (−2,147, 483,647) | 4 byte |
lửa nhỏ | Nó lưu trữ toàn bộ số trong phạm vi nhất định | −2^15 (−32,767) | 2^15 (−32,768) | 2 byte |
tí hon | Nó lưu trữ toàn bộ số trong phạm vi nhất định | 0 | 255 | Byte 1 |
bit | Nó có thể nhận các giá trị 0, 1 hoặc NULL. | 0 | 1 | Cột 1 byte/8bit |
số thập phân | Được sử dụng cho tỷ lệ và số chính xác cố định | −10^38+1 | 10^381−1 | 5 đến 17 byte |
số | Được sử dụng cho tỷ lệ và số chính xác cố định | −10^38+1 | 10^381−1 | 5 đến 17 byte |
tiền | Dữ liệu tiền tệ đã sử dụng | −922,337, 203, 685,477.5808 | +922,337, 203, 685,477.5807 | 8 byte |
tiền nhỏ | Dữ liệu tiền tệ đã sử dụng | -214,478.3648 | +214,478.3647 | 4 byte |
Các kiểu dữ liệu số chính xác trong Máy chủ SQL với các ví dụ:
truy vấn:
DECLARE @Datatype_Int INT = 2 PRINT @Datatype_Int
Đầu ra
2
cú pháp
Thập phân (P,S)
Ở đây,
- P là độ chính xác
- S là tỷ lệ
truy vấn:
DECLARE @Datatype_Decimal DECIMAL (3,2) = 2.31 PRINT @Datatype_Decimal
Đầu ra
2.31
Các kiểu dữ liệu số gần đúng trong SQL
SQL Danh mục Số gần đúng bao gồm dấu phẩy động và giá trị thực. Các kiểu dữ liệu này trong SQL chủ yếu được sử dụng trong tính toán khoa học.
Kiểu dữ liệu số gần đúng
Loại dữ liệu | Mô tả | Giơi hạn dươi | Giới hạn trên | Bộ nhớ | Độ chính xác |
---|---|---|---|---|---|
phao(n) | Được sử dụng cho số chính xác nổi | −1.79E+308 | 1.79E + 308 | Phụ thuộc vào giá trị của n | 7 Digit |
thực | Được sử dụng cho số chính xác nổi | −3.40E+38 | 3.40E + 38 | 4 byte | 15 Digit |
Syntax: FLOAT [(n)]
Ở đây, n là số bit được sử dụng để lưu trữ phần định trị của phao số trong ký hiệu khoa học. Theo mặc định, giá trị của n là 53.
Khi người dùng xác định kiểu dữ liệu như float, n phải có giá trị từ 1 đến 53.
Máy chủ SQL xử lý n là một trong hai giá trị có thể. Nếu 1<=n<=24 thì n được coi là 24. Nếu 25<=n<=53 thì n được coi là 53.
Truy vấn mẫu:
DECLARE @Datatype_Float FLOAT(24) = 22.1234 PRINT @Datatype_Float
Đầu ra
22.1234
Các kiểu dữ liệu ngày và giờ trong SQL
Nó lưu trữ dữ liệu kiểu Ngày và giờ.
Kiểu dữ liệu ngày và giờ
Loại dữ liệu | Mô tả | Kích thước lưu trữ | tính chính xác | Cấp thấp hơn | Dãy trên |
---|---|---|---|---|---|
Ngày giờ | Được sử dụng để chỉ định ngày và giờ từ ngày 1 tháng 1753 năm 31 đến ngày 9999 tháng 3.33 năm XNUMX. Nó có độ chính xác XNUMX mili giây. | 8 byte | Làm tròn đến số gia 000, 003, 007 | 1753-01-01 | 9999-12-31 |
ngày nhỏ | Được sử dụng để chỉ định ngày và giờ từ ngày 1 tháng 0001 năm 31 đến ngày 9999 tháng 100 năm XNUMX. Nó có độ chính xác XNUMX nano giây | 4 byte, cố định | 1 phút | 1900-01-01 | 2079-06-06 |
ngày | Chỉ dùng để lưu trữ ngày từ 1/0001/31 đến 9999/XNUMX/XNUMX | 3 byte, cố định | 1 ngày | 0001-01-01 | 9999-12-31 |
thời gian | Được sử dụng để chỉ lưu trữ các giá trị chỉ thời gian với độ chính xác 100 nano giây. | 5 byte | 100 nano giây | 00:00:00.0000000 | 23:59:59.9999999 |
ngày giờ bù đắp | Tương tự như datatime nhưng có chênh lệch múi giờ | 10 byte | 100 nano giây | 0001-01-01 | 9999-12-31 |
ngày giờ2 | Được sử dụng để chỉ định ngày và giờ từ ngày 1 tháng 0001 năm 31 đến ngày 9999 tháng XNUMX năm XNUMX | 6 byte | 100 nano giây | 0001-01-01 | 9999-12-31 |
Truy vấn ví dụ:
DECLARE @Datatype_Date DATE = '2030-01-01' PRINT @Datatype_Date
Đầu ra
'2030-01-01'
Các kiểu dữ liệu chuỗi ký tự trong SQL
Thể loại này có liên quan đến một loại nhân vật. Nó cho phép người dùng xác định kiểu dữ liệu của ký tự có thể có độ dài cố định và thay đổi. Nó có bốn loại kiểu dữ liệu. Dưới đây là các kiểu dữ liệu máy chủ SQL chuỗi ký tự kèm theo ví dụ.
Các kiểu dữ liệu chuỗi ký tự
Loại dữ liệu | Mô tả | Giơi hạn dươi | Giới hạn trên | Bộ nhớ |
---|---|---|---|---|
xe tăng | Đó là một chuỗi ký tự có chiều rộng cố định. Nó lưu trữ tối đa 8,000 ký tự. | 0 ký tự | 8000 ký tự | n byte |
vecni | Đây là một chuỗi ký tự có chiều rộng thay đổi | 0 ký tự | 8000 ký tự | n byte + 2 byte |
varchar (tối đa) | Đây là một chuỗi ký tự có chiều rộng thay đổi. Nó lưu trữ tối đa 1,073,741,824 ký tự. | 0 ký tự | 2^31 ký tự | n byte + 2 byte |
văn bản | Đây là một chuỗi ký tự có chiều rộng thay đổi. Nó lưu trữ tối đa 2GB dữ liệu văn bản. | 0 ký tự | 2,147,483,647 ký tự | n byte + 4 byte |
Truy vấn ví dụ:
DECLARE @Datatype_Char VARCHAR(30) = 'This is Character Datatype' PRINT @Datatype_Char
Đầu ra
Đây là kiểu dữ liệu ký tự
Các kiểu dữ liệu chuỗi ký tự Unicode trong SQL
Danh mục này lưu trữ đầy đủ các ký tự Unicode sử dụng mã hóa ký tự UTF-16.
Các kiểu dữ liệu chuỗi ký tự Unicode
Loại dữ liệu | Mô tả | Giơi hạn dươi | Giới hạn trên | Bộ nhớ |
---|---|---|---|---|
nchar | Đó là một chuỗi Unicode có chiều rộng cố định | 0 ký tự | 4000 ký tự | 2 lần n byte |
nvarchar | Nó là một chuỗi unicode có chiều rộng thay đổi | 0 ký tự | 4000 ký tự | 2 lần n byte + 2 byte |
văn bản | Nó là một chuỗi unicode có chiều rộng thay đổi | 0 ký tự | 1,073,741,823 ký tự | gấp 2 lần chiều dài chuỗi |
Truy vấn mẫu:
DECLARE @Datatype_nChar VARCHAR(30) = 'This is nCharacter Datatype' PRINT @Datatype_nChar
Đầu ra
Đây là kiểu dữ liệu nCharacter
Các kiểu dữ liệu chuỗi nhị phân trong SQL
Thể loại này chứa một chuỗi nhị phân có độ dài cố định và thay đổi.
Các kiểu dữ liệu chuỗi nhị phân
Loại dữ liệu | Mô tả | Giơi hạn dươi | Giới hạn trên | Bộ nhớ |
---|---|---|---|---|
nhị phân | Nó là một chuỗi nhị phân có chiều rộng cố định. Nó lưu trữ tối đa 8,000 byte. | 0 byte | 8000 byte | n byte |
đa dạng | Đây là một chuỗi nhị phân có chiều rộng thay đổi. Nó lưu trữ tối đa 8,000 byte | 0 byte | 8000 byte | Độ dài thực tế của dữ liệu được nhập + 2 byte |
hình ảnh | Đây là một chuỗi nhị phân có chiều rộng thay đổi. Nó lưu trữ tối đa 2GB. | 0 byte | 2,147,483,647 byte |
Truy vấn mẫu:
DECLARE @Datatype_Binary BINARY(2) = 12; PRINT @Datatype_Binary
Đầu ra
0x000C
Các kiểu dữ liệu khác trong SQL
Đây là các kiểu dữ liệu máy chủ SQL khác nhau với mô tả bên dưới-
Loại dữ liệu | Mô tả |
---|---|
Cursor | Đầu ra của nó là một cột của sp_cursor_list và sp_describe_cursor. Nó trả về tên của biến con trỏ. |
Phiên bản hàng | Phiên bản này đóng dấu các hàng trong bảng. |
Hệ thống phân cấp | Kiểu dữ liệu này đại diện cho một vị trí trong hệ thống phân cấp |
Định danh duy nhất | Chuyển đổi từ một biểu thức ký tự. |
Sql_variant | Nó lưu trữ các giá trị của Kiểu dữ liệu được máy chủ SQL hỗ trợ. |
XML | Nó lưu trữ dữ liệu XML trong một cột. |
Kiểu hình học không gian | Nó biểu diễn dữ liệu trong một hệ tọa độ phẳng. |
Loại địa lý không gian | Nó đại diện cho dữ liệu trong hệ tọa độ trái đất tròn. |
bàn | Nó lưu trữ một tập kết quả để xử lý sau. |
Sự thật thú vị!
- kiểu dữ liệu CHAR nhanh hơn kiểu dữ liệu SQL VARCHAR trong khi truy xuất dữ liệu.
Tổng kết
- Mỗi cột trong bảng xác định bằng kiểu dữ liệu của nó trong quá trình tạo bảng.
- Có sáu loại chính và một loại hỗn hợp khác. Các loại hỗn hợp khác có chín loại phụ Máy chủ SQL kiểu dữ liệu và kích thước có sẵn.