MySQL: Kiểu dữ liệu hệ thống


Khóa học qua video:
Lập trình Python All Lập trình C# All SQL Server All Lập trình C All Java PHP HTML5-CSS3-JavaScript
Đăng ký Hội viên
Tất cả các video dành cho hội viên

Kiểu dữ liệu dùng để định nghĩa loại giá trị có thể lưu trữ cho một cột nào đó của bảng.

Dưới đây là danh sách các kiểu dữ liệu hệ thống (được xây dựng sẵn) phổ biến:

Mục

Kiểu dữ liệu

Mô tả

Số chính xác

int, integer

Một cột được khai báo kiểu dữ liệu này sẽ sử dụng 4 byte trong bộ nhớ máy tính. Nó thường được sử dụng để lưu trữ giá trị số nguyên.

smallint

Một cột được khai báo kiểu dữ liệu này sẽ sử dụng 2 byte trong bộ nhớ máy tính. Nó có thể lưu trữ các số nguyên từ -32768 đến 32767.

tinyint

Một cột của kiểu này chiếm 1 byte trong bộ nhớ. Có giá trị từ 0 đến 255

bigint

Một cột được khai báo kiểu dữ liệu này sẽ sử dụng 8 byte trong bộ nhớ máy tính. Nó có thể lưu trữ các số nguyên từ -2^63 (-9.223.372.036.854.775.808) đến 2^63-1

mediumint

Một cột được khai báo kiểu dữ liệu này sẽ sử dụng 3 byte trong bộ nhớ máy tính.

decimal Một cột được khai báo kiểu dữ liệu này sẽ có độ chính xác cao và có thể co dãn kích thước lưu trữ trong bộ nhớ.
bit(M) Lưu trữ M bit giá trị số nhị phân. M từ 1-64. Số byte cung cấp được tính: (M+7)/8

 

Mục

Kiểu dữ liệu

Mô tả

Số xấp xỉ (Approximate)

float

Một cột được khai báo kiểu dữ liệu này sẽ sử dụng 4 byte trong bộ nhớ máy tính. Biễu diễn các số chấm động từ -3.4E+38 đến 3.40E+38.

double Một cột được khai báo kiểu dữ liệu này sẽ sử dụng 8 byte trong bộ nhớ máy tính. Biễu diễn các số chấm động từ -1.79E+308 đến 1.79E+308.

real

Một cột được khai báo kiểu dữ liệu này sẽ sử dụng 8 byte trong bộ nhớ máy tính. Biễu diễn các số chấm động từ -1.79E+308 đến 1.79E+308.


Date and time

date Chỉ biễu diễn ngày. Định dạng: YYYY-MM-DD. Hỗ trợ giá trị: '1000-01-01' đến '9999-12-31'.
datetime Biễu diễn ngày và giờ. Định dạng: YYYY-MM-DD hh:mm:ss. Hỗ trợ giá trị: '1000-01-01 00:00:00' đến '9999-12-31 23:59:59'.
timestamp Biễu diễn ngày và giờ. Định dạng: YYYY-MM-DD hh:mm:ss. Hỗ trợ giá trị: '1970-01-01 00:00:01' UTC đến '2038-01-19 03:14:07' UTC.
time Biểu diễn giờ. Định dạng: hh:mm:ss. Hỗ trợ giá trị:  '-838:59:59' to '838:59:59'
year Biểu diễn năm. Định dạng: YYYY. Hỗ trợ giá trị: '1901' to '2155'.

 

Mục

Kiểu dữ liệu

Mô tả

Chuỗi ký tự

char(n)

Lưu trữ chuỗi ký tự với kích thước cố định. Để dễ hình dung hơn có kiểu dữ liệu này, ta ví dụ như n=20, tức là char(20) và điều này có nghĩa là cột của bảng có kiểu này có thể lưu trữ được những chuỗi lên đến tối đa 20 ký tự. Nếu ta có một chuỗi là 'MySQL Version 8', chuỗi này gồm 15 ký tự, khi đó vì còn thừa 5 ký tự (20-15=5) nên hệ thống sẽ tự động thêm vào sau chuỗi tương ứng năm dấu cách cho đủ 20. Điều này có nghĩa rằng dữ liệu lưu trữ trong cột có kiểu char(20) sẽ luôn luôn có kích thước là 20.

varchar(n) Cũng lưu trữ chuỗi ký tự nhưng với kích thước thay đổi theo thực tế của dữ liệu và kích thước tối đa là n ký tự.
binary(n) Tương tự kiểu char, nhưng lưu trữ chuỗi nhị phân. n ở đây là số byte và 0<= n <= 255
varbinary(n) Tương tự như kiểu varchar, nhưng lưu trữ chuỗi nhị phân.
text Lưu trữ chuỗi ký tự, độ dài có thể thay đổi. Nó thường được dùng để lưu trữ văn bản có kích thước lớn, như mô tả sản phẩm chẳng hạn. Được cung cấp n+2 byte, với n<216.
mediumtext Tương tự kiểu text, nhưng được cung cấp n+3 byte, với n<224.
longtext Tương tự kiểu text, nhưng được cung cấp n+4 byte, với n<232.
tinytext Tương tự kiểu text, nhưng được cung cấp n+1 byte, với n<28.
enum('val1','val2',...) Chứa đựng các giá trị liệt kê. Được cấp phát 1 hoặc 2 byte phụ thuộc vào số lượng giá trị liệt kê (tối đa 65.535 giá trị)
set('val1','val2',...) Chứa đựng các thành phần giá trị. Được cấp phát 1, 2, 3, 4 hoặc 8 byte phụ thuộc vào số lượng thành viên đã thiết lập (tối đa 64)
» Tiếp: NULL và NOT NULL
« Trước: Thao tác với DataBase
Khóa học qua video:
Lập trình Python All Lập trình C# All SQL Server All Lập trình C All Java PHP HTML5-CSS3-JavaScript
Đăng ký Hội viên
Tất cả các video dành cho hội viên
Copied !!!