Tổng hợp các kiểu dữ liệu trong SQL đầy đủ, chi tiết, chuẩn xác cho người muốn tìm hiểu
https://fptshop.com.vn/https://fptshop.com.vn/
Nhựt Liên
2 năm trước

Tổng hợp các kiểu dữ liệu trong SQL đầy đủ, chi tiết, chuẩn xác cho người muốn tìm hiểu

Giới thiệu các kiểu dữ liệu trong SQL mà người dùng máy tính nên tham khảo trước khi vận dụng để nâng cao hiệu suất công việc. Khi bạn đọc nắm bắt đặc điểm của các kiểu dữ liệu sẽ biết cách sử dụng quy tắc lập trình tốt hơn và hạn chế những sai sót không đáng có cho bản thân.
Chia sẻ:
Cỡ chữ nhỏ
Cỡ chữ nhỏ
Cỡ chữ lớn
Nội dung bài viết
Giới thiệu sơ lược về công nghệ SQL Server
Tìm hiểu quy trình sử dụng Data Type
Phân tích các kiểu dữ liệu trong SQL Server
Lưu ý về các kiểu dữ liệu trong SQL Server
Tạm kết

Các kiểu dữ liệu trong SQL là một chủ đề “mới” được nhiều người dùng SQL Server tìm hiểu. Nền tảng nổi lên nhờ cuộc cách mạng công nghệ lần thứ tư trong thời đại hiện nay. Thế nhưng không phải ai cũng hiểu những kiểu dữ liệu được khai báo như thế nào? Đừng bỏ lỡ hàng loạt chia sẻ từ FPT Shop nếu bạn muốn khám phá về chủ đề này. 

Giới thiệu sơ lược về công nghệ SQL Server

SQL Server là gì?

SQL Server là một hệ thống quản lý cơ sở dữ liệu quan hệ do Microsoft phát triển. Nền tảng cung cấp hàng loạt các tính năng quản lý dữ liệu để lưu trữ, truy xuất cơ sở dữ liệu. SQL Server hỗ trợ ngôn ngữ truy vấn SQL (Structured Query Language). Đây là bộ ngôn ngữ tiêu chuẩn được sử dụng để tương tác với cơ sở dữ liệu.

Định nghĩa cơ bản về các dịch vụ SQL

SQL Server có những tính năng nào?

Một số tính năng quan trọng của SQL Server bao gồm:

  • Tính nhất quán: SQL Server đảm bảo tính nhất quán của dữ liệu thông qua giao thức ACID (Atomicity, Consistency, Isolation, Durability) để đảm bảo rằng các giao dịch cơ sở dữ liệu được thực hiện một cách an toàn và nhất quán.
  • Bảo mật: SQL Server cung cấp các cơ chế bảo mật để bảo vệ dữ liệu khỏi truy cập trái phép và đảm bảo tính toàn vẹn của dữ liệu.
  • Tối ưu hóa hiệu suất: SQL Server cung cấp các công cụ tối ưu hóa hiệu suất để đảm bảo việc truy xuất dữ liệu và thao tác cơ sở dữ liệu diễn ra một cách hiệu quả.
  • Sao lưu và phục hồi: Hệ thống sao lưu và phục hồi dữ liệu của SQL Server giúp đảm bảo an toàn cho dữ liệu và khả năng phục hồi sau các sự cố.

Khai thác một số yếu tố đặc trưng

Hệ thống SQL Server bao gồm các công cụ quản lý cơ sở dữ liệu như SQL Server Management Studio (SSMS) để thực hiện nhiệm vụ. Hệ thống được trang bị nhiều công cụ giúp lập trình viên và quản trị viên tối ưu hóa hiệu suất của cơ sở dữ liệu. Với các tính năng mạnh mẽ này chính là lý do SQL Server được sử dụng rộng rãi trong môi trường doanh nghiệp. Mục đích nhằm hỗ trợ người dùng quản lý cơ sở dữ liệu quan trọng và đảm bảo tính an toàn của dữ liệu.

Tìm hiểu quy trình sử dụng Data Type

Để sử dụng kiểu dữ liệu trong SQL Server, trước hết, bạn cần xác định kiểu dữ liệu cho từng cột trong bảng để đảm bảo nó có khả năng lưu trữ kiểu dữ liệu mong muốn. Bằng cách xác định đúng kiểu dữ liệu mà công nghệ không chỉ ngăn chặn được sự nhập thông tin không hợp lệ mà còn tối ưu hóa việc sử dụng bộ nhớ.

Một số phương thức sử dụng cơ bản

Khi bạn gán kiểu dữ liệu phù hợp cho cột, hệ thống sẽ phân bổ bộ nhớ một cách hiệu quả tùy thuộc vào loại dữ liệu và giá trị được lưu trữ. Để xác định kiểu dữ liệu trong SQL Server, bạn có thể sử dụng những thông tin sau:

  • Kiểu dữ liệu (fixed-length or variable-length): Xác định xem kiểu dữ liệu đại diện cho chuỗi dữ liệu có độ dài cố định (fixed-length) hay biến thiên (variable-length).
  • Dung lượng lưu trữ: Xác định dung lượng bộ nhớ được sử dụng cho dữ liệu, có thể cố định hoặc biến thiên tùy thuộc vào giá trị.
  • Kiểu dữ liệu có thể được chỉ mục hay không: Xác định xem kiểu dữ liệu có thể được chỉ mục (index) hay không, điều này có thể ảnh hưởng đến hiệu suất truy vấn dữ liệu.
  • Triển khai so sánh giá trị: SQL Server triển khai cách so sánh giá trị của mỗi kiểu dữ liệu cụ thể theo một cách đặc biệt.
  • Một số kiểu dữ liệu phổ biến trong SQL Server bao gồm chuỗi (string), số (numeric), ngày và thời gian (date and time).

Phân tích các kiểu dữ liệu trong SQL Server

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

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.

TEXT

Tố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.

NTEXT

Tố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.

IMAGE

kích thước tối đa là 2GB.

  • Độ dài tùy biến.
  • Dữ liệu nhị phân.

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

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 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.

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

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]

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

Xem thêm: Kolotibablo Bot: Công cụ đọc văn bản và thu thập dữ liệu

Lưu ý về các kiểu dữ liệu trong SQL Server

Decimal và Numeric

Trong SQL Server, DECIMAL và NUMERIC đều là kiểu dữ liệu dùng để lưu trữ các số thực có phần thập phân cố định. Chúng được sử dụng để đảm bảo tính chính xác cao khi lưu trữ giá trị tiền tệ, tỷ lệ phần trăm hay các số liệu tài chính khác.

Phân biệt những kiểu dữ liệu số thực có phần thập phân

Cả hai kiểu dữ liệu này đều yêu cầu người dùng phải xác định độ chính xác trong việc lưu trữ số thập phân. Trong đó, DECIMAL được sử dụng để lưu trữ giá trị Decimal cố định, NUMERIC cũng có chức năng tương tự.

Ví dụ minh họa

Khi bạn khai báo một cột với kiểu dữ liệu DECIMAL(10, 2) có nghĩa là cột đó lưu trữ số có tổng cộng 10 chữ số (bao gồm cả phần nguyên và phần thập phân) và 2 chữ số sau dấu thập phân. Điều này giúp chúng ta xác định độ chính xác cụ thể khi lưu trữ số liệu tài chính hoặc các giá trị có phần thập phân quan trọng.

Float and Real

Trong SQL Server, kiểu dữ liệu FLOAT và REAL đều được sử dụng để lưu trữ các số thực (floating point numbers) với phần nguyên và phần thập phân.

Tập hợp các kiểu dữ liệu đồng nhất

Cụ thể:

  • Kiểu dữ liệu FLOAT được sử dụng để lưu trữ số thực với độ chính xác cao, có thể lưu trữ các giá trị lớn nhỏ và phạm vi rộng.
  • Kiểu dữ liệu REAL cũng được sử dụng để lưu trữ số thực, nhưng với một mức độ chính xác thấp hơn so với kiểu dữ liệu FLOAT.
  • Người dùng có thể chọn kiểu dữ liệu phù hợp dựa trên yêu cầu về mức độ chính xác và phạm vi của giá trị số thực mà họ muốn lưu trữ trong cơ sở dữ liệu.

Kiểu dữ liệu Money 

Trong SQL Server, kiểu dữ liệu MONEY được sử dụng để lưu trữ các giá trị tiền tệ có đơn vị tiền tệ của cơ sở dữ liệu. Kiểu dữ liệu này được thiết kế để lưu trữ các giá trị tiền tệ với một phạm vi cụ thể và chính xác đối với các tính toán liên quan đến tiền tệ.

Tính đặc trưng của các kiểu dữ liệu chung

Một điều quan trọng mà bạn cần lưu ý khi sử dụng kiểu dữ liệu MONEY chính là công nghệ lưu trữ giá trị tiền tệ dựa trên đơn vị tiền tệ của cơ sở dữ liệu, tức là nó sẽ lưu trữ theo đơn vị tiền tệ mặc định của hệ thống. Điều này dẫn đến nguy cơ lưu trữ không chính xác nếu đơn vị tiền tệ không được xác định cụ thể. 

Tuy nhiên, kiểu dữ liệu MONEY cung cấp lợi ích về độ chính xác và tiện lợi trong các tính toán liên quan đến tiền tệ, ví dụ như tính toán tổng các số tiền, hay tính toán các khoản lãi suất. Khi sử dụng kiểu dữ liệu MONEY, nên đảm bảo rằng đơn vị tiền tệ được sử dụng là chính xác và được quản lý một cách cẩn thận.

Kiểu dữ liệu Date 

Trong SQL, kiểu dữ liệu DATE được sử dụng để lưu trữ ngày tháng trong định dạng yyyy-mm-dd (năm-tháng-ngày). Kiểu dữ liệu này cho phép lưu trữ ngày tháng mà không có thông tin về thời gian hoặc múi giờ.

Hoàn thành mục tiêu sử dụng các kiểu dữ liệu chung

Khi bạn sử dụng kiểu dữ liệu DATE trong SQL, bạn có thể thực hiện các thao tác như so sánh các ngày tháng, tính toán khoảng cách thời gian, và tạo các điều kiện tra cứu dựa trên ngày tháng. Kiểu dữ liệu DATE trong SQL rất hữu ích khi bạn cần lưu trữ và xử lý thông tin ngày tháng mà không cần quan tâm đến thời gian cụ thể.

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

Kiểu dữ liệu hình ảnh thường được sử dụng để lưu trữ dữ liệu hình ảnh, âm thanh, video hoặc các loại dữ liệu nhị phân khác. Trong Microsoft SQL Server có hai kiểu dữ liệu phổ biến để lưu trữ dữ liệu nhị phân là IMAGE và VARBINARY(MAX).

Phân tích các loại dữ liệu theo điều kiện đặc trưng

Kiểu dữ liệu IMAGE được sử dụng để lưu trữ dữ liệu nhị phân có kích thước cố định. Tuy nhiên, từ phiên bản SQL Server 2005 trở đi, Microsoft khuyến nghị sử dụng kiểu dữ liệu VARBINARY(MAX) thay vì IMAGE bởi vì VARBINARY(MAX) hỗ trợ lưu trữ dữ liệu nhị phân độ dài tùy ý.

Khi truy vấn dữ liệu hình ảnh từ cơ sở dữ liệu, bạn có thể sử dụng các phương thức tương ứng của ngôn ngữ lập trình hoặc framework để hiển thị hoặc xử lý hình ảnh.

Tạm kết

Trên đây cập nhật những kiến thức được FPT Shop đưa ra để bạn tìm hiểu các kiểu dữ liệu trong SQL. Bên cạnh đó, bạn có thể cập nhật các phương pháp khai báo hiệu quả trên thiết bị của mình. 

Xem thêm: 

Tại FPT Shop cung cấp nhiều dòng điện thoại đời mới dành cho những khách hàng “sành công nghệ”. Nếu bạn đang săn tìm những chiếc smartphone chất lượng, giá tốt thì hãy mua hàng tại đây. 

Chủ đề
Thương hiệu đảm bảo

Thương hiệu đảm bảo

Nhập khẩu, bảo hành chính hãng

Đổi trả dễ dàng

Đổi trả dễ dàng

Theo chính sách đổi trả tại FPT Shop

Giao hàng tận nơi

Giao hàng tận nơi

Trên toàn quốc

Sản phẩm chất lượng

Sản phẩm chất lượng

Đảm bảo tương thích và độ bền cao