มีคนถามผมมาก เกี่ยวกับปัญหาการ ข้อมูลของ Oracle ที่เป็นภาษาไทย แสดงผลออกมาเป็น ??? หรือ ฟฟฟฟ โดยเฉพาะอย่างยิ่ง เครื่อง Client ที่เป็น Windows ซึ่งปัญหานี้เกิดจาก Character Set ของ เครื่อง Client ไม่ตรงกับ Character Set ของ Database นั่นเอง เราสามารถตรวจสอบได้ ดังนี้
ที่ฝั่ง Database
1. login Oracle Database เป็น sys หรือ system
2. ใช้ SQL ตรวจสอบ NLS ดังนี้
SELECT * FROM NLS_DATABASE_PARAMETERS;
3. ดูค่า NLS_CHARACTERSET ต้องเป็น
TH8TISASCII จึงจะสามารถจัดเก็บภาษาไทยได้
ที่ฝั่ง Client (Windows)
1. ปุ่ม Start--> run --> พิมพ์ regedit แล้วกด OK
2. ไปที่ HKEY_LOCAL_MACHINE--> Software --> Oracle --> HOME0
3. ที่หน้าต่างขวามือ ดูค่า NLS_LANG ตัวหลังจุดต้องเป็น TH8TISASCII เช่น AMERICAN_AMERICA.TH8TISASCII หรือ THAI_THAILAND.TH8TISASCII