จริงๆ แล้ว ข้อมูลทั้งสองประเภทนี้ใน MySQL เก็บสตริงและสามารถตั้งค่าให้มีความยาวสูงสุดได้ การใช้ประเภทข้อมูลเหล่านี้ล้วนขึ้นอยู่กับความต้องการ ต่อไปนี้เป็นบางประเด็นที่จะทำให้เราชัดเจนว่าเมื่อใดควร CHAR และเมื่อ VARCHAR -
- สมมติว่าถ้าเรามีขนาดข้อมูลตายตัว เช่น แฟล็ก "Y" และ "N" ควรใช้ CHAR มากกว่า VARCHAR เป็นเพราะคำนำหน้าความยาว 1 ไบต์ใช้กับ VARCHAR ด้วย กล่าวอีกนัยหนึ่ง สำหรับประเภทข้อมูลข้างต้น CHAR จะจัดเก็บเพียง 1 ไบต์ซึ่งเป็นข้อมูลเท่านั้น และ VARCHAR จะจัดเก็บ 2 ไบต์ (1 ไบต์สำหรับข้อมูลและ 1 ไบต์สำหรับคำนำหน้าความยาว)
- หากเราต้องการจัดเก็บข้อมูล เช่น ชื่อผู้ใช้และรหัสผ่าน หรือข้อมูลที่มีความยาวผันแปรอื่น ๆ ได้ ควรใช้ประเภทข้อมูล VARCHAR เพราะเราจะสามารถจัดเก็บข้อมูลได้โดยไม่เปลืองเนื้อที่เพิ่มเติม