Just a Web Programmer Blog

แก้ปัญหา ORA-01843: not a valid month ใน Oracle เครื่อง� าษาไทย

January 8th, 2007 Posted in Programming

ช่วงนี้เรียน Oracle ที่มหาลัย
แอบจะบ้าตาย เพราะว่า import sql statement ไม่ได้ .. .

คำถามว่า .. เพราะอะไร .. .

SQL> select to_date(’20-JAN-06′) from dual;
select to_date(’20-JAN-06′) from dual
*
ERROR at line 1:
ORA-01843: not a valid month

อะอะ .. ไปเจอบนหน้า http://www.cryer.co.uk/brian/oracle/ORA01843.htm

alter session set nls_date_format=’DD-MON-YY’;

พอเสร็จ นึกว่าจะใช้ได้แล้ว ..
แต่ก็ยังเจอปัญหาเดิม !

SQL> select to_date(’20-JAN-06′) from dual;
select to_date(’20-JAN-06′) from dual
*
ERROR at line 1:
ORA-01843: not a valid month

คราวนี้เลยลอง select session มาดู

select * from nls_session_parameters;

เจออันนี้ แปลกๆ ที่สุด !

PARAMETER
—————–

VALUE
—————–

NLS_DATE_FORMAT
DD-MON-YY

NLS_DATE_LANGUAGE
THAI

NLS_SORT
THAI_DICTIONARY

ก็เลยจัดการซะเลย

ALTER session SET NLS_DATE_LANGUAGE=’ENGLISH’;

ปรากฎว่า ใช้ได้ !

สรุปคือ ปัญหาของมันอยู่ที่ภาษาเท่านั้นเอง
เราจะตั้งเป็น permanent ได้ไหมหว่า .. .

Tags: ,

Related posts

Post a Comment

*
To prove that you're not a bot, enter this code
Anti-Spam Image