Các kiểu dữ liệu trong MySQL mà bạn cần phải biết

Được biết MySQL là hệ quản trị cơ sở dữ liệu phổ biến hàng đầu hiện nay. Để có thể sử dụng tốt MySQL, bạn cần phải nắm bắt được một số kiểu dữ liệu quan trọng. Hãy theo dõi bài viết dưới đây, chúng tôi sẽ giới thiệu đến bạn những kiểu dữ liệu trong MySQL mà bạn cần phải biết.

String Types ( kiểu dữ liệu chuỗi)

Kiểu dữ liệu này gồm có 6 dạng chính đó là VARCHAR, CHAR, VARBINARY, BINARY, BLOB, TEXT .

Kiểu dữ liệu VARCHAR và CHAR

VARCHAR(size)

Mỗi chuỗi có độ dài là VARCHAR ( có chứa các chữ cái, số và đặc biệt là các ký tự đặc biệt

Tham số size chỉ định độ dài cột tối đa được tính bằng ký tự – hoàn toàn có thể sẽ là từ 0 – 65535

CHAR(size)

Là một chuỗi có độ dài cố định và thắt chặt ( hoàn toàn có thể chứa các vần âm, số, các ký tự đặc biệt quan trọng, … ) Tham số kích cỡ chỉ định độ dài cột theo các ký tự – hoàn toàn có thể từ 0-225. Mặc định là số lượng 1 .

Kiểu dữ liệu VARBINARY và BINARY

VARBINARY(size)

Giống với VARCHAR ( ), nhưng tàng trữ chuỗi byte nhị phân
Tham số size được chỉ định độ dài cột tối đa tính bằng byte

BINARY(size)

Giống với CHAR ( ), nhưng tàng trữ chuỗi byte nhị phân
Tham số kích cỡ được chỉ định độ dài cột tính bằng byte. Mặc định là số lượng 1

Kiểu dữ liệu TEXT và BLOB

TINYBLOB

Dành cho BLOB ( viết tắt của Binary Large Objects )
Độ dài tối đa : 255 ký tự

TINYTEXT

Giữ chuỗi có độ dài tối đa là 255 ký tự

TEXT(size)

Giữ một chuỗi có độ dài tối đa là 65,535 ký tự

BLOB(size)

Dành cho BLOB, có năng lực tàng trữ lên đến 65.535 byte dữ liệu

MEDIUMTEXT

Giữ chuỗi có độ dài tối đa là 16,777,215 ký tự

MEDIUMBLOB

Dành cho BLOB, có năng lực tàng trữ lên đến 16.777.215 byte dữ liệu

LONGTEXT

Giữ một chuỗi có độ dài tối đa lên đến 4,292,967,295 ký tự

LONGBLOB

Dành cho BLOB, có năng lực tàng trữ lên đến 4.292.967.295 byte dữ liệu

ENUM(val1, val2,…)

Một đối tượng người dùng chuỗi chỉ có 1 giá trị, được chọn từ list các giác trị hoàn toàn có thể có
Bạn hoàn toàn có thể liệt kê tới 65535 giá trị trong list của ENUM
Nếu một giá trị được chèn mà không có trong list, một giá trị trống sẽ được chèn
Các giá trị được sắp xếp theo một thứ tự mà bạn nhập vào .

SET (val1, val2,…)

Một đối tượng người dùng chuỗi hoàn toàn có thể có 0 hoặc rất nhiều giá trị, được chọn bởi list các giá trị hoàn toàn có thể
Bạn hoàn toàn có thể liệt kê tối đa 64 giá trị trong list SET

Numeric Data Types ( kiểu dữ liệu số)

Kiểu dữ liệu số gồm 2 dạng đó là : Kiểu dữ liệu số nguyên và kiểu dữ liệu số thực

Kiểu dữ liệu số nguyên

  • BIT: Kiểu giá trị bit, số lượng bit trên mỗi một giá trị đều được chỉ định một cách rõ ràng về size. Tham số kích cỡ hoàn toàn có thể giữ giá trị từ 1 – 64. 1 là giá trị mặc định của kích cỡ
  • TINYINT:Một số nguyên nhỏ. Phạm vi đã ký là từ 128 – 127. Phạm vi chưa được ký là 0-255. Tham số kích cỡ được chỉ định chiều rộng hiển thị tối đa là 255 .
  • BOOL:Số 0 được coi là sai còn các giá trị khác 0 được coi là đúng .
  • BOOLEAN

    : gần giống với BOOL

  • SMALLINT:một số nguyên nhỏ. Dải ô đã ký là từ 32768 đến 32767. Dải ô chưa ký là từ 0 – 65635. Tham số kích cỡ chỉ định chiều rộng hiển thị tối đa là 255 .
  • MEDIUMINT:một số nguyên trung bình. Dải ô đã ký là từ 8388608 – 8388607. Dải ô chưa ký là từ 0 – 16777215. Tham số kích cỡ được chỉ định chiều rộng hiển thị tối đa là 255 .
  • INT: một số nguyên trung bình. Dải ô đã được ký là từ 214783648 – 2147483647. Dải ô chưa được ký là từ 0 – 4294967295. Tham số size chỉ định chiều rộng hiển thị tối đa là 255 .
  • INTEDER: bằng với INT
  • BIGINT: Một số nguyên lớn. Dải ô đã ký là từ 9223372036854775808 – 9223372036854775807. Dải ô chưa được ký từ 0 – 18446744073709551615. Tha, số size được chỉ định hiển thị tối đa là 255

Kiểu dữ liệu thực

FLOAT(size,d)

  • Một số dấu phẩy động. Tổng số chữ số được chỉ định về size
  • Số chữ số sau dấu thập phân được chỉ định trong tham số d. Cú pháp này không được gật đầu trong MYSQL 8.0.17 và nó đã bị xóa trong các phiên bản của MYSQL ở tương lai .

FLOAT(p)

  • Là một số ít dấu phẩy động
  • MYSQL sử dụng giá trị p để xác lập nên sử dụng FLOAT hay DOUBLE cho kiểu dữ liệu tác dụng .
  • Nếu p là những số lượng từ 0 – 24 thì kiểu dữ liệu sẽ trở thành FLOAT ( ). Nếu p là những số lượng từ 25 – 53 thì kiểu dữ liệu sẽ trở thành DOUBLE ( )

DOUBLE(size, d)

  • Một số dấu phẩy động có kích cỡ thường thì
  • Tổng số chữ số được chỉ định về kích cỡ S
  • Ô chữ số sau dấu thập phân được chỉ định trong tham số d

DECIMAL(size, d)

  • Những điểm cố định và thắt chặt đúng chuẩn
  • Tổng số chữ số được chỉ định đúng mực về size
  • Số chữ số sau dấu thập phân được chỉ định bởi tham số d. Số tối đa của size là 65. Số lớn nhất của d là 30 .
  • Giá trị mặc định cho kích cỡ này đó là 10. Giá trị mặc định của d là 0

DEC(size,d): Bằng với DECIMAL(size, d)

Date and time ( kiểu dữ liệu thời gian)

Các kiểu dữ liệu ngày và giờ trong MySQL cần quan tâm về các định dạng cũng như khoanh vùng phạm vi được tương hỗ

Kiểu dữ liệu DATE

  • Kiểu dữ liệu ngày tháng
  • Định dạng : năm, tháng, ngày
  • Phạm vi được tương hỗ là ‘ 1000 – 01-01 ’ – ‘ 9999 – 12-31

Kiểu dữ liệu DATETIME

  • Ngày và giờ được phối hợp với nhau
  • ĐỊnh dạng : năm, tháng, ngày ; giờ, phút, giây
  • Phạm vi được hỗ trợ từ ‘1000-01-01 00:00:00’ – ‘9999-12-31 23:59:59’.

  • Thêm DEFAULT và ON UPDATE trong định nghĩa cột để tự động hóa khởi tạo và update theo ngày và giờ hiện tại .

Kiểu dữ liệu TIMESTAMP

  • Kiểu dữ liệu dấu thời hạn
  • Giá trị TIMESTAMP được tàng trữ dưới dạng số giây kể từ kỷ nguyên Unix
  • Định dạng : năm, tháng, ngày và giờ, phút, giây
  • Phạm vi được tương hỗ là từ ‘ 1970 – 01-01 00:00:01 ’ UTC – ‘ 2038 – 01-09 03:14:07 ’ UTC .
  • Có thể chỉ định tự động hóa khởi tại và update cho ngày tháng năm và giờ hiện tại bằng cách sử dụng .

Kiểu dữ liệu thời gian

  • Là dữ liệu thời hạn
  • Định dạng : giờ, phút, giây
  • Phạm vi được tương hỗ là từ ‘ – 838 : 59 : 59 ’ – ‘ 838 : 59 : 59 ’ .

Kiểu dữ liệu năm

  • Một số năm ở định dạng bốn chữ số
  • Các giá trị được phép chỉ định dạng bốn chữ số : 1901 – 2155 – 0000
  • Các kiểu dữ liệu trong MySQL 8.0 được tương hỗ năm ở định dạng 2 chữ số

Tổng hợp các kiểu dữ liệu trong MySQL

Sau đây chúng tôi sẽ liệt kê tóm tắt các kiểu dữ liệu đã kê ở trên, giúp bạn sẽ dễ hiểu hơn .

DATE TYPE ĐẶC ĐIỂM DATA TYPE ĐẶC ĐIỂM
CHAR String ( 0 – 255 ) INT Integer ( – 2147483648 to 2147483647 )
VARCHAR String ( 0 – 255 ) BIGINT Integer ( – 9223372036854775808 to 9223372036854775807 )
TINYTEXT String ( 0 – 255 ) FLOAT Decimal ( precise to 23 digits )
TEXT String ( 0 – 65535 ) DOUBLE Decimal ( 24 to 53 digits )
BLOB String ( 0 – 65535 ) DECIMAL “ DOUBLE ” stored as string
MEDIUMTEXT String ( 0 – 16777215 ) DATE YYYY-MM-DD
MEDIUMBLOB String ( 0 – 16777215 ) DATETIME YYYY-MM-DD HH : MM : SS
LONGTEXT String ( 0 – 4294967295 ) TIMESTAMP YYYYMMDDHHMMSS
LONGBLOB String ( 0 – 4294967295 ) TIME HH : MM : SS
TINYINT Integer ( – 128 to 127 ) ENUM Mỗi một đối tượng người dùng chuỗi chỉ hoàn toàn có thể có một giá trị ,
Có thể liệt kê tới 65535 giá trị
SMALLINT Integer ( – 32768 to 32767 ) SET Mỗi một đối tượng người tiêu dùng chuỗi chỉ hoàn toàn có thể có một giá trị ,
Tối đa 64 giá trị trong list SET
MEDIUMINT Integer ( – 8388608 to 8388607 ) BOOLEAN TINYINT ( 1 )

Trên đây là một số thông tin mà chúng tôi muốn chia sẻ đến bạn về các kiểu dữ liệu trong MySQL. Mong rằng bài viết này sẽ giúp bạn nắm rõ hơn các kiến thức về các dữ liệu trong MySQL. Nếu còn bất kỳ thắc mắc nào liên quan đến bài viết thì hãy liên hệ ngay với chúng tôi để được giải đáp sớm nhất có thể bạn nhé.

FPT Aptech trực thuộc Tổ chức Giáo dục FPT có hơn 24 năm kinh nghiệm đào tạo lập trình viên quốc tế tại Việt Nam, và luôn là sự lựa chọn ưu tiên của các sinh viên và nhà tuyển dụng.

Các kiểu dữ liệu trong MySQL mà bạn cần phải biết

Bài viết liên quan
Hotline 24/7: O984.666.352
Alternate Text Gọi ngay