การจัดเก็บข้อมูลใน MySQL และ UTF-8

รบกวนขอความรู้เกี่ยวกับการจัดเก็บข้อมูลใน MySQL5 ครับ เกี่ยวกับการกำหนดความยาวของฟิลด์ที่เป็นตัวอักษรภาษาไทย กรณีระบุประเภทการเก็บเป็น UTF-8

คือเท่าที่รู้มาคร่าวๆ เนี่ย การเก็บตัวอักษรภาษาอื่นๆ ที่ไม่ใช่ภาษาอังกฤษนั้น ต้องการ 3 ไบต์/หนึ่งตัวอักษร ดังนั้นหากต้องการเก็บข้อมูลขนาด 50 ตัวอักษร ต้องระบุขนาดฟิลด์เป็น 150 เช่น VARCHAR(150) แบบนี้ถูกต้องหรือไม่ครับ?

ถ้าใช่ การระบุเช่นนั้นก็แสดงว่าหากกรอกมาเป็นภาษาอังกฤษ ก็สามารถรองรับได้ถึง 150 ตัวอักษรเต็มๆ แบบนี้คนกรอกภาษาอังกฤษก็ขี้โกงสิ :stuck_out_tongue:

อีกข้อหนึ่งคือ จำได้เลาๆ ว่า MySQL4.x ข้อมูลประเภท VARCHAR สามารถเก็บได้สูงสุดไม่เกิน 255 ตัวอักษรใช่ไหมครับ? หากใช่ ปัจจุบันใน MySQL5.x สามารถรองรับได้กี่ตัวอักษร เพราะเคยลองระบุความยาวมากกว่า 255 ตอนสร้างตารางก็ไม่เกิด error ขึ้น