Computer >> Máy Tính >  >> Lập trình >> MySQL

Có bao nhiêu nhóm kiểu dữ liệu được hỗ trợ bởi MySQL?


MySQL sử dụng nhiều kiểu dữ liệu khác nhau được chia thành ba loại -

  • Số
  • Ngày và giờ
  • Các loại chuỗi

CÁC LOẠI DỮ LIỆU SỐ

MySQL sử dụng tất cả các kiểu dữ liệu số ANSI SQL tiêu chuẩn, vì vậy nếu bạn đang truy cập MySQL từ một hệ thống cơ sở dữ liệu khác, những định nghĩa này sẽ quen thuộc với bạn.
Danh sách sau đây hiển thị các kiểu dữ liệu số phổ biến và mô tả của chúng -

  • INT - Một số nguyên có kích thước bình thường, có thể có dấu hoặc không dấu. Nếu có dấu, phạm vi cho phép là từ -2147483648 đến 2147483647. Nếu chưa ký, phạm vi cho phép là từ 0 đến 4294967295. Bạn có thể chỉ định chiều rộng tối đa 11 chữ số.
  • TINYINT - Một số nguyên rất nhỏ có thể có dấu hoặc không dấu. Nếu có dấu, phạm vi cho phép là từ -128 đến 127. Nếu không có dấu, phạm vi cho phép là từ 0 đến 255. Bạn có thể chỉ định chiều rộng tối đa 4 chữ số.
  • SMALLINT - Một số nguyên nhỏ có thể có dấu hoặc không dấu. Nếu có dấu, phạm vi cho phép là từ -32768 đến 32767. Nếu không có dấu, phạm vi cho phép là từ 0 đến 65535. Bạn có thể chỉ định chiều rộng tối đa 5 chữ số.
  • MEDIUMINT - Một số nguyên cỡ vừa có thể có dấu hoặc không dấu. Nếu có dấu, phạm vi cho phép là từ -8388608 đến 8388607. Nếu không có dấu, phạm vi cho phép là từ 0 đến 16777215. Bạn có thể chỉ định độ rộng tối đa 9 chữ số.
  • BIGINT - Một số nguyên lớn có thể có dấu hoặc không dấu. Nếu được ký, phạm vi cho phép là từ -9223372036854775808 đến 9223372036854775807. Nếu chưa ký, phạm vi cho phép là từ 0 đến 18446744073709551615. Bạn có thể chỉ định chiều rộng tối đa 20 chữ số.
  • NỔI (M, D) - Một số dấu phẩy động không thể không dấu. Bạn có thể xác định độ dài hiển thị (M) và số phần thập phân (D). Điều này không bắt buộc và sẽ
    mặc định là 10,2, trong đó 2 là số thập phân và 10 là tổng số chữ số (bao gồm cả số thập phân). Độ chính xác thập phân có thể lên đến 24 vị trí cho một FLOAT.
  • DOUBLE (M, D) - Một số dấu phẩy động chính xác kép không thể không dấu. Bạn có thể xác định độ dài hiển thị (M) và số lượng số thập phân (D).
  • DECIMAL (M, D) - Một số dấu phẩy động đã giải nén không thể không dấu. Trong các số thập phân được giải nén, mỗi số thập phân tương ứng với một byte. Cần xác định độ dài hiển thị (M) và số phần thập phân (D). NUMERIC là từ đồng nghĩa với DECIMAL

Điều này không bắt buộc và sẽ mặc định là 16,4, trong đó 4 là số thập phân. Độ chính xác thập phân có thể lên tới 53 vị trí cho một DOUBLE. REAL là từ đồng nghĩa với DOUBLE.

LOẠI NGÀY VÀ GIỜ

Các kiểu dữ liệu ngày và giờ của MySQL như sau -

  • DATE - Ngày nằm trong khoảng 1000-01-01 đến 9999-12-31. “YYYY-MM-DD” là định dạng DATE mặc định. Ví dụ:ngày 17 tháng 1 năm 1984 sẽ được lưu trữ là 1984-01-17.
  • DATETIME - Loại dữ liệu này hỗ trợ ngày cùng với thời gian trong phạm vi từ 1000-01-01 00:00:00 đến 9999-12-31 23:59:59. “YYYY-MM-DD HH:MM:SS” là định dạng DATETIME mặc định. Ví dụ:2:20 chiều ngày 17 tháng 1 năm 1984 sẽ được lưu trữ thành 1984-01-17 14:20:00.
  • TIMESTAMP - Loại dữ liệu dấu thời gian hỗ trợ ngày cùng với thời gian trong phạm vi từ ‘1970-01-01 00:00:01’ đến ‘2038-01-19 08:44:07’. Nó giống như kiểu dữ liệu DATETIME. Ví dụ:2:20 chiều ngày 17 tháng 1 năm 1984 sẽ được lưu trữ thành 1984-01-17 14:20:00.
  • THỜI GIAN - Lưu trữ thời gian ở định dạng HH:MM:SS.
  • NĂM (M) - Lưu trữ một năm ở định dạng 2 chữ số hoặc 4 chữ số. Nếu độ dài được chỉ định là 2 (ví dụ:YEAR (2)), thì YEAR có thể nằm trong khoảng từ 1970 đến 2069 (70 đến 69). Nếu độ dài được chỉ định là 4, thì YEAR có thể là 1901 đến 2155. Độ dài mặc định là 4.

CÁC LOẠI STRING

Mặc dù kiểu số và ngày rất thú vị, nhưng hầu hết dữ liệu bạn sẽ lưu trữ sẽ ở dạng chuỗi
định dạng. Danh sách này mô tả các kiểu dữ liệu chuỗi phổ biến trong MySQL.

  • CHAR (M) - Một chuỗi có độ dài cố định có độ dài từ 1 đến 255 ký tự (ví dụ:CHAR (5)), được đệm bên phải với các khoảng trắng theo độ dài được chỉ định khi được lưu trữ. Không bắt buộc phải xác định độ dài, nhưng giá trị mặc định là 1.
  • VARCHAR (M) - Một chuỗi có độ dài thay đổi từ 1 đến 65,535 ký tự. Ví dụ, VARCHAR (25). Bạn phải xác định độ dài khi tạo trường VARCHAR.
  • BLOB hoặc TEXT - Một trường có độ dài tối đa là 65535 ký tự. BLOB là "Đối tượng lớn nhị phân" và được sử dụng để lưu trữ lượng lớn dữ liệu nhị phân, chẳng hạn như hình ảnh hoặc các loại tệp khác. Các trường được định nghĩa là TEXT cũng chứa một lượng lớn dữ liệu. Sự khác biệt giữa hai cách này là việc sắp xếp và so sánh trên dữ liệu được lưu trữ có phân biệt chữ hoa chữ thường trên BLOB và không phân biệt chữ hoa chữ thường trong các trường TEXT. Bạn không chỉ định độ dài bằng BLOB hoặc TEXT.
  • TINYBLOB hoặc TINYTEXT - Cột BLOB hoặc TEXT có độ dài tối đa là 255 ký tự. Bạn không chỉ định độ dài với TINYBLOB hoặc TINYTEXT.
  • MEDIUMBLOB hoặc MEDIUMTEXT - Cột BLOB hoặc TEXT có độ dài tối đa là 16777215 ký tự. Bạn không chỉ định độ dài bằng MEDIUMBLOB hoặc MEDIUMTEXT.
  • LONGBLOB hoặc LONGTEXT - Cột BLOB hoặc TEXT có độ dài tối đa là 4294967295 ký tự. Bạn không chỉ định độ dài bằng LONGBLOB hoặc LONGTEXT.
  • ENUM - Một kiểu liệt kê, là một thuật ngữ ưa thích để chỉ danh sách. Khi xác định ENUM, bạn đang tạo một danh sách các mục mà từ đó giá trị phải được chọn (hoặc nó có thể là NULL). Ví dụ:nếu bạn muốn trường của mình chứa "A" hoặc "B" hoặc "C", bạn sẽ xác định ENUM của mình là ENUM ('A', 'B', 'C') và chỉ những giá trị đó (hoặc NULL) bao giờ có thể điền vào trường đó.