วันพุธ, ตุลาคม 26, 2548

ปัญหาของภาษาไทยกับ MySQL 5

จากปกติ MySQL version เก่าใช้งานกับภาษาไทยมันจะไม่มีปัญหาอะไรเพราะมีการเก็บ data ที่เป็น ANSI code แต่มา version ใหม่ๆ ได้มีการปรับเปลี่ยนการเก็บ data ที่เปลี่ยนแปลงจากเดิมโดยมีการเก้บเป็น unicode ซึ่งโดยส่วนใหญ่ developer ของเมืองไทย ยังไม่ทราบและมีปัญหาบ่อยๆ กับตรงนี้


จริงๆ มีวิธีแก้ค่อนข้างหลายวิธีเหมือนกันหากไม่สามารถกระทำการใดๆ ต่อตัว server เนื่องจากเราไปเช่าเค้าหรืออะไรก็ตามที่ เราต้องมาแก้ที่ application ของเราเองโดยทำการเพิ่มขั้นตอนในการทำงานเข้าไปซักหน่อย โดยทำดังนี้

ทุกครั้งก่อนที่จะทำการ create connection ให้สั่งดังนี้ (ตัวอย่างเป็น PHP นะ)

$sql = 'SET CHARACTER SET tis620';

mysq_query($sql);

$sql ="SET collation_connection = 'tis620_thai_ci' ";

mysq_query($sql);



ก็ประมาณคร่าวๆ นี่ล่ะ



ปล. ไม่ได้ Update blog ซะนานปัญหาส่วนตัวเยอะเหมือนเดิม เฮ้อ จะพยายาม update บ่อยเท่าที่ทำได้แล้วกัน

1 ความคิดเห็น:

ิบอย กล่าวว่า...

ดีมากครับ ขอบคุณสำหรับความรู้ที่เผยแพร่
Thak