Trên thực tế, cả hai kiểu dữ liệu này trong MySQL đều lưu trữ các chuỗi và có thể được đặt với độ dài tối đa. Việc sử dụng các kiểu dữ liệu này hoàn toàn phụ thuộc vào nhu cầu. Sau đây là một số điểm sẽ giúp chúng ta hiểu rõ rằng khi nào thì nên CHAR và khi nào thì VARCHAR -
- Giả sử nếu chúng ta có kích thước dữ liệu cố định, chẳng hạn như cờ “Y” và “N” thì tốt hơn nên sử dụng CHAR hơn là VARCHAR. Đó là vì tiền tố độ dài 1 byte cũng được sử dụng với VARCHAR. Nói cách khác, đối với loại dữ liệu trên, CHAR sẽ lưu trữ 1byte duy nhất là dữ liệu duy nhất và VARCHAR sẽ lưu trữ 2 byte (1 byte cho dữ liệu và 1 byte cho tiền tố độ dài).
- Nếu chúng ta muốn lưu trữ dữ liệu như tên người dùng và mật khẩu hoặc bất kỳ dữ liệu có độ dài thay đổi nào khác thì tốt hơn nên sử dụng kiểu dữ liệu VARCHAR vì khi đó chúng ta có thể lưu trữ dữ liệu mà không tốn thêm dung lượng.