Các Kiểu Dữ Liệu Trong SQL Server Cập Nhật Đầy Đủ Nhất

Ngày đăng: 06/02/2023
Tác giả: Hostingviet
Lượt xem: 3543
Theo dõi:

SQL Server đang ngày càng trở nên phổ biến và được ưa chuộng bởi người dùng trong cuộc cách mạng công nghệ lần thứ tư hiện nay. Mặc dù vậy nhưng chắc hẳn vẫn còn rất nhiều người chưa thể biết hết tất cả các kiểu dữ liệu trong SQL Server. Hosting Việt gửi tới bạn đọc tổng hợp toàn bộ các kiểu dữ liệu được khai báo trong SQL Server cực đầy đủ và chi tiết. Bao gồm nhiều kiểu dữ liệu Demical, Money, Date, hình ảnh...Hãy cùng với Hosting Việt tìm hiểu về chúng trong bài viết này nhé!

Khái niệm SQL Server là gì?

SQL Server là viết tắt của cụm từ "Structured Query Language server," một công cụ mạnh mẽ được thiết kế để quản lý dữ liệu. Được sử dụng phổ biến trong nhiều lĩnh vực trong thời đại công nghệ hiện đại, SQL Server là một giải pháp đáng tin cậy cho việc xử lý và quản lý dữ liệu quy mô lớn.

SQL, là ngôn ngữ không yêu cầu người dùng phải có kỹ năng đặc biệt để truy cập cơ sở dữ liệu. Đối với hầu hết người sử dụng, họ đều nhấn mạnh rằng giao diện thông báo của SQL Server là dễ sử dụng và rất ít gặp lỗi. SQL cung cấp một loạt lệnh đa dạng để thực hiện các tác vụ liên quan đến dữ liệu, bao gồm việc xóa, chèn, cập nhật hàng trong một quan hệ, cũng như thêm, xóa, chỉnh sửa nhanh chóng nhiều đối tượng bên trong cơ sở dữ liệu.

SQL Server không chỉ giúp kiểm soát quyền truy cập vào cơ sở dữ liệu mà còn đảm bảo tính bảo mật, độ nhất quán và mối quan hệ, ràng buộc của cơ sở dữ liệu. Các đối tượng chính trong SQL Server thường là các bảng dữ liệu, với hàng và cột quen thuộc. Trong cấu trúc này, cột dữ liệu và kiểu dữ liệu giúp xác định và tạo ra cấu trúc của bảng, và khi tổ chức thành hệ thống phục vụ một hoặc nhiều mục đích cụ thể, nó sẽ trở thành một cơ sở dữ liệu.

Kiểu dữ liệu trong SQL Server là gì

Trong SQL Server, kiểu dữ liệu được sử dụng để xác định loại dữ liệu mà một cột có thể chứa. Mỗi cột trong bảng cần được định rõ kiểu dữ liệu để đảm bảo tính chính xác và hiệu quả khi lưu trữ và xử lý dữ liệu. Dưới đây là một số kiểu dữ liệu phổ biến trong SQL Server:

  1. INT (Integer): Là kiểu dữ liệu dành cho số nguyên không có phần thập phân.

  2. VARCHAR(n): Là kiểu dữ liệu dành cho chuỗi ký tự có độ dài tối đa n ký tự.

  3. CHAR(n): Tương tự như VARCHAR, nhưng có độ dài cố định là n ký tự.

  4. FLOAT: Là kiểu dữ liệu dành cho số thực với độ chính xác tương đối.

  5. DATE: Là kiểu dữ liệu để lưu trữ ngày trong định dạng 'YYYY-MM-DD'.

  6. TIME: Là kiểu dữ liệu để lưu trữ thời gian trong định dạng 'HH:MI:SS'.

  7. DATETIME: Là sự kết hợp của DATE và TIME để lưu trữ cả ngày và thời gian.

  8. BOOLEAN: Là kiểu dữ liệu chỉ có hai giá trị: TRUE hoặc FALSE.

  9. DECIMAL(p, s): Là kiểu dữ liệu dành cho số thực với p là tổng số chữ số và s là số chữ số sau dấu thập phân.

  10. BLOB (Binary Large Object): Là kiểu dữ liệu dành cho lưu trữ dữ liệu nhị phân, chẳng hạn như hình ảnh hoặc tệp tin.

Tiếp sau đây, HostingViet sẽ đi vào chi tiết hơn các kiểu dữ liệu trong SQL Server:

Các kiểu dữ liệu trong SQL Server bao gồm những gì?

Kiểu dữ liệu chuỗi các ký tự

cac kieu du lieu trong sql server

 

Cú pháp của kiểu dữ liệu

Kích thước của kiểu dữ liệu

Chú thích

CHAR(kt)

Tối đa 8.000 ký tự

kt là kích thước hay số ký tự có thể lưu trữ.

Độ dài của chuỗi ký tự là cố định.

Không thể dùng được cho các ký tự Unicode.

VARCHAR(kt)


VARCHAR(max)

Tối đa 8.000 ký tự hoặc  tùy thuộc vào con số tối đa.

kt là số ký tự có thể lưu trữ.

Độ dài chuỗi ký tự không cố định.

Nếu chỉ định là max thì kích thước tối đa sẽ là 2GB.

Không thể dùng được cho các ký tự Unicode.

TEXT

Tối đa là 2GB.

Độ dài chuỗi ký tự  không cố định.

Không thể dùng được cho các ký tự Unicode.

NCHAR(kt)

Tối đa là 4000 ký tự.

Độ dài chuỗi ký tự không cố định.

Có thể dùng được cho các ký tự Unicode.

NVARCHAR(kt) hoặc NVARCHAR(max)

Tối đa 4.000 ký tự hoặc  tùy thuộc vào con số tối đa.

kt là số ký tự có thể lưu trữ.

Độ dài dữ liệu không cố định.

Nếu chỉ định là max thì kích thước tối đa sẽ là 2GB.

Không thể dùng được cho các ký tự Unicode.

NTEXT

Kích thước tối đa là 1.073.741.823 bytes.

Độ dài chuỗi ký tự là tùy biến.

Có thể dùng được cho các ký tự Unicode.

BINARY(kt)

Số ký tự tối đa là 8000.

kt là số ký tự có thể lưu trữ.

Độ dài chuỗi ký tự cố định.

Nếu sử dụng dấu cách thì ta cần để bù vào phần trống sao cho đủ số ký tự.

Có thể nhập được kiểu dữ liệu nhị phân.

VARBINARY(kt)


VARBINARY(max)

Tối đa 8.000 ký tự hoặc  tùy thuộc vào con số tối đa.

kt là số ký tự có thể lưu trữ.

Độ dài chuỗi ký tự là tùy biến.

Nếu chỉ định là max thì kích thước tối đa sẽ là 2GB.

Có thể nhập được kiểu dữ liệu hệ nhị phân.

IMAGE

Tối đa là 2GB.

Độ dài chuỗi ký tự cố định.

Sử dụng kiểu dữ liệu hệ nhị phân.



Kiểu dữ liệu dạng số

Cú pháp của kiểu dữ liệu

Phạm vi của kiểu dữ liệu

Chú thích

BIT

0 hoặc 1 hoặc NULL

 

TINYINT

Từ 0 đến 2^8-1 (hay 255).

Số nguyên (Z)

SMALLINT

Từ -2^15 (hay -32.768)

Đến 2^15-1 (hay 32.767)

Số nguyên (Z)

INT

Từ -2^31 (-2.147.483.648)

Đến 2^31-1 (2.147.483.647).

Số nguyên (Z)

BIGINT

Từ -2^63 (-9.223.372,036,854,775,808)

Đến 2^63-1 (9,223,372,036,854,775,807)

Số nguyên (Z)

DECIMAL(m,d)

m sẽ được mặc định là 18 nếu có sự chỉ định cụ thể từ phía người dùng.

d được mặc định là 0 nếu có sự chỉ định cụ thể từ phía người dùng.

m tổng số lượng các chữ số.

d là số lượng các chữ số nằm bên phải của dấu phẩy.

DEC(m,d)

m sẽ được mặc định là 18 nếu có sự chỉ định cụ thể từ phía người dùng.

d được mặc định là 0 nếu có sự chỉ định cụ thể từ phía người dùng.

Tương đương với kiểu dữ liệu DECIMAL(m,d) ở trên.

m tổng số lượng các chữ số.

d là số lượng các chữ số nằm bên phải của dấu phẩy.

NUMERIC(m,d)

m sẽ được mặc định là 18 nếu có sự chỉ định cụ thể từ phía người dùng.

d được mặc định là 0 nếu có sự chỉ định cụ thể từ phía người dùng.

Được hiểu tương đương với kiểu dữ liệu DECIMAL.

m tổng số lượng các chữ số.

d là số lượng các chữ số nằm bên phải của dấu phẩy.

FLOAT(n)

Số dấu phẩy động n sẽ được mặc định là 53 nếu có sự chỉ định cụ thể từ phía người dùng.

n là số lượng các bit được lưu trữ thuộc trong một kí hiệu hóa học.

REAL

 

Tương đương với kiểu dữ liệu FLOAT(24)

SMALLMONEY

Từ -214,748.3648

Đến 214,748.3647

Số thập phân

MONEY

Từ -922,337,203,685,477.5808

Đến 922,337,203,685,477.5807

Số thập phân

 

Một vài kiểu dữ liệu date trong SQL phổ biến với người dùng

Bảng dưới đây sẽ giới thiệu một vài kiểu dữ liệu date trong SQL phổ biến được người dùng ưa chuộng sử dụng:

Cú pháp của kiểu dữ liệu

Phạm vi của kiểu dữ liệu

Chú thích

DATE

Dữ liệu ngày được lấy từ ừ '0001-01-01' đến '9999-12-31'.

Dữ liệu sau khi nhập đủ sẽ được hiển thị dưới dạng ‘YYYY-MM-DD’

DATETIME

Từ '1753-01-01 00:00:00'

Đến '9999-12-31 23:59:59'.


Dữ liệu giờ được lấy từ '00:00:00' cho đến '23:59:59.997'

Dữ liệu sau khi nhập đủ sẽ được hiển thị dưới dạng ‘YYYY-MM-DD hh:mm:ss[.mmm]’.

DATETIME2

Dữ liệu ngày được lấy từ ừ '0001-01-01' đến '9999-12-31'.


Dữ liệu giờ lấy từ '00:00:00' đến '23:59:59:9999999'.

Dữ liệu sau khi nhập đủ sẽ được hiển thị dưới dạng ‘YYYY-MM-DD [hh:mm:ss]’ (phần thập phân).

SMALLDATETIME

Dữ liệu ngày từ '1900-01-01' đến '2079-06-06'.


Dữ liệu giờ từ '00:00:00' đến '23:59:59'.

Dữ liệu sau khi nhập đủ sẽ được hiển thị dưới dạng ‘YYYY-MM-DD hh:mm:ss’.

TIME

Dữ liệu ngày từ '0001-01-01' đến '9999-12-31'.


Dữ liệu giờ từ '00:00:00.0000000' đến '23:59:59.9999999'.

Dữ liệu sau khi nhập đủ sẽ được hiển thị dưới dạng 'YYYY-MM-DD hh:mm:ss[.nnnnnnn]'

DATETIMEOFFSET

Dữ liệu ngày từ '0001-01-01' đến '9999-12-31'.


Dữ liệu giờ giá trị từ '00:00:00' đến '23:59:59:9999999'.


Dữ liệu múi giờ lấy từ -14:00 đến +14:00.

Dữ liệu chính xác tới số thập phân của giây.


Dữ liệu sau khi nhập đủ sẽ được hiển thị dưới dạng YYYY-MM-DD hh:mm:ss[.nnnnnnn]' [{+|-}hh:mm

 

Xem thêm:

Những dữ liệu quan trọng thường dùng trong các kiểu dữ liệu trong SQL Server

Kiểu dữ liệu Demical trong SQL

Kiểu dữ liệu demical trong SQL được hiểu là các giá dữ liệu được lưu trữ dưới dạng thập phân và giữ giá trị thập phân.

Chúng cung cấp các loại dữ liệu sau đây:

  • Decimal and numeric
  • Float and real

Decimal and numeric

  • Decimal  [(p [, s])] và numeric[(p [, s])]
  • p (độ chính xác) -> tổng số tối đa số chữ số thập phân có thể được lưu trữ, cả hai bên trái và bên phải của số thập phân. Độ chính xác phải là một giá trị từ 1 đến độ chính xác tối đa là 38. Độ chính xác mặc định là 18.
  • s (scale) -> số lượng tối đa các chữ số thập phân có thể được lưu trữ ở bên phải của số thập phân. Quy mô phải là một giá trị từ 0 đến p. Quy mô có thể được xác định chỉ khi độ chính xác được quy định cụ thể. Quy mô mặc định là 0.
  • Các kích thước lưu trữ của các kiểu Decimal và Numeric khác nhau, dựa vào độ chính xác, như thể hiện sau đây:

Precision

Storage bytes

1 to 9

5

10 to 19

9

20 to 28

13

29 to 38

17



Lưu ý: numeric có chức năng tương đương với decimal.

Float and real

  • Float [(n)] và real
  • Ước tính số kiểu dữ liệu sử dụng với dữ liệu điểm số nổi.
  • Dữ liệu dấu chấm động là gần đúng, do đó, không phải tất cả các giá trị trong phạm vi kiểu dữ liệu có thể được đại diện chính xác.
  • Trong đó n là số bit được sử dụng để lưu trữ các mantissa của số float trong ký hiệu khoa học, và do đó, dictates chính xác và kích thước lưu trữ.
  • Nếu n được quy định cụ thể sau đó nó phải là một giá trị giữa 1 và 53.
  • Giá trị mặc ​​định của n là 53.

n value

Precision

Storage size

1 to 24

7 digits

4 bytes

25 to 53

15 digits

8 bytes

 

Kiểu dữ liệu money trong SQL

Trong các kiểu dữ liệu thì kiểu dữ liệu money trong SQL cũng là một trong những dữ liệu được nhiều người sử dụng và những người học về SQL nên biết tới.

cac kieu du lieu trong sql server

Kiểu dữ liệu money trong SQL có tác dụng dùng để lưu trữ các loại tiền tệ hoặc ngoại tệ giữ giá trị tiền tệ. Nó cung cấp kiểu dữ liệu smallmoney và money với kích thước 4 và 8 byte tương ứng. Cụ thể được thể hiện dưới bảng sau:

Monetary Types

Bytes

Smallmoney

4

Money

8

 

Kiểu dữ liệu date trong SQL

Kiểu dữ liệu date trong SQL thể hiện các giá trị ngày và thời gian giữ các giá trị ngày và thời gian của một ngày.

Kiểu dữ liệu này cung cấp các loại dữ liệu sau đây:

  • Smalldatetime
  • Datetime

Data type

Range

Accuracy

Smalldatetime

January 1, 1900, through June 6, 2079

1 minute

Datetime

January 1, 1753, through December 31, 9999

3.33 milliseconds

Smalldatetime

  • Các kiểu dữ liệu smalldatetime lưu trữ ngày tháng và thời gian trong ngày với độ chính xác ít hơn datetime.
  • Công cụ cơ sở dữ liệu lưu trữ các giá trị smalldatetime như hai 2-byte số nguyên.
  • 2 byte đầu tiên lưu trữ số ngày sau 01 tháng 1 năm 1900.
  • 2 byte khác lưu các số phút kể từ nửa đêm.

Datetime

  • Các giá trị với các kiểu dữ liệu datetime được lưu trữ nội bộ bởi các công cụ cơ sở dữ liệu Microsoft Server SQL 2005 là hai số nguyên 4-byte.
  • 4 byte đầu tiên lưu trữ số lượng ngày trước hoặc sau ngày cơ sở: 01 Tháng Một năm 1900.
  • Ngày cơ sở các tài liệu tham khảo hệ thống ngày.
  • 4 byte lưu trữ thời gian trong ngày biểu diễn như là số mili giây sau nửa đêm.

Kiểu dữ liệu hình ảnh trong SQL

Kiểu dữ liệu hình ảnh trong SQL nằm trong dữ liệu Binary Values. Giá trị nhị phân giữ hình ảnh các giá trị nhị phân như thế, clip âm thanh và video clip.

Kiểu nhị phân giá trị là:

  • Binary
  • Varbinary
  • Image

Binary

  • Nhị phân [(n)]
  • Độ dài cố định dữ liệu nhị phân với chiều dài n byte, trong đó n là giá trị từ 1 đến 8000.
  • Kích thước lưu trữ là n byte.

Varbinary

  • varbinary [(n | max)]
  • Độ dài thay đổi dữ liệu nhị phân.
  • n có thể có giá trị từ 1 đến 8000.
  • Kích thước lưu trữ tối đa là 2 ^ 31-1 bytes.
  • Kích thước lưu trữ thực tế của dữ liệu nhập vào + 2 byte.

Image

  • Đó là bằng varbinary (max) kiểu dữ liệu này sẽ được gỡ bỏ trong một phiên bản tương lai của Microsoft SQL Server.
  • Tránh sử dụng các loại dữ liệu trong phát triển sử dụng thay vì. varbinary (max).

Trên đây là các kiểu dữ liệu trong SQL Server. Nếu như bạn còn thắc mắc gì về SQL Server thì hãy gọi về hotline 0356-95-86-88 hoặc truy cập website https://hostingviet.vn/ để được giải đáp nhanh nhất.

Bài viết liên quan
 
 
2023/12/29

Honeypot là gì? Honeynet là gì? Cách thức hoạt động

Trong bối cảnh ngày nay, khi môi trường kỹ thuật số ngày càng phát triển, an ninh mạng trở thành một trong những ưu tiê...
Tác giả:
Đọc thêm
 
 
2023/12/29

Webflow là gì? Các tính năng, Ưu nhược điểm và Cách sử dụng

Trong thời đại phát triển nhanh chóng của kỹ thuật số ngày nay, việc xây dựng một trang web chuyên nghiệp không còn chỉ...
Tác giả:
Đọc thêm
 
 
2023/11/25

Xung đột IP là gì? Nguyên nhân và cách xử lý hiệu quả

Khi bạn bắt gặp thông báo "Windows đã phát hiện xung đột địa chỉ IP" hoặc "máy tính khác trên mạng này c...
Tác giả:
Đọc thêm
 
 
2023/11/25

Lỗi a disk read error occurred là gì? Nguyên nhân và cách sửa

Lỗi A Disk Read Error Occurred là một trong những sự cố phổ biến khiến người dùng máy tính gặp khó khăn khi khởi động hệ thống của...
Tác giả:
Đọc thêm
 
 
2023/11/25

Downtime là gì? Các nguyên nhân gây ra Downtime và cách khắc phục

Downtime là một khái niệm quan trọng trong lĩnh vực công nghệ thông tin và quản lý hệ thống mạng. Khi một trang web hoặc dịch...
Tác giả:
Đọc thêm
 
 
2023/11/24

Địa chỉ IPV4 là gì? Được chia làm mấy phần, mỗi nhóm có mấy bit?

Trên bước tiến vững chắc của cuộc cách mạng kỹ thuật số, Internet đã trở thành một phần quan trọng trong cuộc sống hàng ngày...
Tác giả:
Đọc thêm