Các kiểu dữ liệu trong MySQL
Trần Thị Vân
- 1150
- 18/08/2025
Chức năng của Các kiểu dữ liệu trong MySQL
Các kiểu dữ liệu trong MySQL được dùng để định dạng kiểu dữ liệu cho các cột, kiểu dữ liệu đó có thể là kiểu số nguyên, số thập phân, kiểu chuỗi, thời gian,...
Các kiểu dữ liệu trong MySQL
Kiểu dữ liệu Số nguyên trong MySQL
TINYINT: là kiểu số nguyên có độ dài 1 byte, lưu trữ được từ số -128 đến số 127.
SMALLINT: là kiểu số nguyên có độ dài 2 byte, lưu trữ được từ số -32768 đến 32767.
MEDIUMINT: là kiểu số nguyên có độ dài 3 byte, lưu trữ được từ số -2147483648 đến 2147483647.
INT: là kiểu số nguyên có độ dài 4 byte, lưu trữ được từ số -2147483648 đến 2147483647.
BIGINT: là kiểu số nguyên có độ dài 8 byte, lưu trữ được từ số -9223372036854775808 đến 9223372036854775807.
Kiểu dữ liệu Số thực trong MySQL
FLOAT: Lưu trữ những số có dấu phẩy.
DOUBLE: Lưu trữ những số có dấu phẩy.
Kiểu dữ liệu Dạng chuỗi trong MySQL
CHAR: là kiểu chuỗi, chứa tối đa 1 ký tự.
VARCHAR: là kiểu chuỗi, chứa tối đa 255 ký tự, bạn có thể chọn giới hạn ký tự ở mức dưới 255.
TEXT: là kiểu chuỗi, chứa tối đa 65,535 ký tự, dành cho các bài viết có ít nội dung.
MEDIUMTEXT: là kiểu chuỗi, chứa tối đa 16,777,215 ký tự, dành cho các bài viết có nội dung hơi dài.
LONGTEXT: là kiểu chuỗi, chứa tối đa 4,294,967,295 ký tự, dành cho các bài viết có nội dung dài dành cho SEO.
Kiểu dữ liệu thời gian trong MySQL
DATE: là kiểu thời gian, Y-m-d (Năm-Tháng-Ngày), có giá trị từ 1000-01-01 đến 9999-12-31.
DATETIME: là kiểu thời gian, Y-m-d h-i-s (Ngày-Tháng-Năm Giờ:Phút:Giây), có gí trị từ 1000-01-01 00:00:00 đến 9999-12-31 23:59:59.
YEAR: giá trị của năm gồm 4 số từ 1901 đến 2555, hoặc có có thể điền 0000, giá trị 2 chữ số từ 70 tới 69, nếu điền vào 2 số từ 70 tới 69 thì sẽ tự động điều 1970 tới 2069.
TIME: H:i:s (Giờ:Phút:Giây).
TIMESTAMP: Y-m-d H:i:s (Năm-Tháng-Ngày Giờ:Phút:Giây), tự động cập nhật thời gian khi có thay đổi.
Cách lựa chọn kiểu dữ liệu MySQL phù hợp
Việc chọn kiểu dữ liệu không chỉ ảnh hưởng đến cách MySQL lưu trữ thông tin mà còn tác động đến dung lượng bảng, khả năng kiểm soát dữ liệu và hiệu suất truy vấn. Khi thiết kế bảng, nên chọn kiểu dữ liệu dựa trên bản chất, phạm vi giá trị và cách sử dụng dữ liệu thay vì chọn theo thói quen.
Chọn kiểu dữ liệu số theo nhu cầu lưu trữ
Với dữ liệu số nguyên như số lượng, tuổi, mã trạng thái hoặc số lần thực hiện, nên ưu tiên các kiểu số nguyên phù hợp với phạm vi giá trị thực tế. Không nên sử dụng kiểu có phạm vi quá lớn nếu dữ liệu không cần đến, vì có thể làm tăng dung lượng lưu trữ không cần thiết.
Đối với các giá trị cần phần thập phân, chẳng hạn giá tiền, tỷ lệ hoặc số liệu đo lường, cần cân nhắc giữa kiểu số chính xác và kiểu số gần đúng. Những dữ liệu liên quan đến tiền tệ thường cần độ chính xác cao nên không nên lựa chọn kiểu dữ liệu chỉ dựa trên khả năng lưu được số lớn.
- Số đếm hoặc trạng thái: chọn kiểu số nguyên có phạm vi phù hợp.
- Giá trị cần phần thập phân chính xác: ưu tiên kiểu dữ liệu phù hợp với yêu cầu độ chính xác.
- Giá trị rất lớn: kiểm tra phạm vi trước khi quyết định kiểu dữ liệu.
Chọn kiểu dữ liệu chuỗi theo độ dài nội dung
Dữ liệu dạng chữ nên được lựa chọn dựa trên độ dài và đặc điểm nội dung. Những giá trị ngắn, có giới hạn rõ ràng như mã sản phẩm, tên đăng nhập hoặc trạng thái thường phù hợp với kiểu chuỗi có độ dài xác định. Nội dung có kích thước thay đổi như tiêu đề, mô tả hoặc văn bản dài cần được cân nhắc theo dung lượng thực tế.
Không nên đặt giới hạn chuỗi quá lớn chỉ để dự phòng khi chưa xác định nhu cầu. Ngược lại, giới hạn quá ngắn có thể khiến dữ liệu hợp lệ bị cắt hoặc phát sinh lỗi khi thêm dữ liệu.
Đối với nội dung văn bản dài, hãy xem xét riêng nhu cầu lưu trữ và truy vấn để chọn kiểu dữ liệu phù hợp. Cách lựa chọn này giúp cấu trúc bảng rõ ràng và tránh lãng phí tài nguyên.
Chọn kiểu dữ liệu ngày giờ theo mục đích sử dụng
Dữ liệu ngày giờ cần được chọn dựa trên loại thông tin cần lưu và cách ứng dụng sử dụng nó. Ngày sinh thường chỉ cần thông tin về ngày, trong khi thời điểm tạo đơn hàng, cập nhật tài khoản hoặc ghi nhận sự kiện thường cần cả ngày và giờ.
Khi thiết kế bảng, cần xác định rõ dữ liệu có cần lưu thời gian hay không, có cần độ chính xác cao đến phần giây hay không và ứng dụng sẽ sử dụng dữ liệu đó cho mục đích nào. Việc xác định từ đầu giúp tránh phải thay đổi cấu trúc bảng khi hệ thống phát triển.
- Chỉ cần ngày: chọn kiểu dữ liệu dành cho ngày.
- Cần ngày và thời gian: sử dụng kiểu phù hợp để lưu đầy đủ thời điểm.
- Cần ghi nhận thời điểm phát sinh sự kiện: nên thống nhất cách lưu và xử lý thời gian trong toàn bộ ứng dụng.
Những lưu ý khi thiết kế kiểu dữ liệu cho bảng MySQL
Trước khi tạo bảng, nên xác định dữ liệu thực tế mà cột sẽ nhận thay vì chọn kiểu dữ liệu theo tên gọi của trường. Một lựa chọn hợp lý cần đáp ứng đồng thời ba yếu tố: lưu được dữ liệu cần thiết, hạn chế dư thừa và thuận tiện khi truy vấn.
- Chọn kiểu dữ liệu vừa đủ với phạm vi giá trị dự kiến.
- Không dùng kiểu dữ liệu quá lớn chỉ vì muốn dự phòng.
- Xác định rõ cột chứa số, chuỗi, ngày hay thời gian trước khi thiết kế.
- Kiểm tra độ dài và độ chính xác cần thiết của dữ liệu.
- Giữ cách lựa chọn kiểu dữ liệu nhất quán giữa những cột có cùng mục đích.
Một thiết kế dữ liệu tốt ngay từ đầu sẽ giúp bảng MySQL dễ quản lý, hạn chế sai lệch dữ liệu và thuận lợi hơn khi hệ thống mở rộng.
Lời kết
Cảm ơn các bạn đã tham khảo bài viết Các kiểu dữ liệu trong MySQL.
Tải file database .sql về nếu muốn kiểm tra hoặc thực hành Tải về.
- 0 Bình luận
Email, Điện thoại của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *