อยากทราบวิธีการแก้ไขปัญหา Date time ของ SQL ครับ
set datatype = datetime
ปกติ insert datetime format 'dd/mm/yyyy' ตัวอย่าง '19/12/2552' ค่าทีลง db คือ 19/12/2552
ปัจจุบันพบปัญหาคือ insert ไปกลับกลายเป็นรูปแบบ 'mm/dd/yyyy' (ค่า พ.ศ.ก็ถูก+543) ตัวอย่าง '11/12/2552' ค่าทีลง db คือ 12/11/3095 แต่ไม่ได้มีการแก้ไข code ของโปรแกรมไม่ทราบว่าปัญหานี้เกิดจากอะไร วานผู้รู้ช่วยแนะนำด้วยครับ
(คือปัญหานี้มีรูปแบบ error code ขึ้นมาแบบนี้ครับ)
Microsoft OLE DB Provider for ODBC Drivers error '80040e07'
[Microsoft][ODBC SQL Server Driver][SQL Server]The conversion of a char data type to a datetime data type resulted in an out-of-range datetime value.
?, line 0
ขอบคุณครับ
ถ้าเป็นไปได้ ให้แก้ไขรูปแบบวันที่ของ Server ให้เป็นไปตามต้องการครับ น่าจะง่ายกว่า การแก้ไขโค้ด แต่วิธีนี้จะทำได้ในกรณีที่ Server เป็นของตัวเองเท่านั้นครับ
แต่หากเป็น Server เช่า ก็คงต้องแก้ไขรูปแบบวันที่ ที่โค้ดเอาเองแหละครับ ซึ่งอาจลำบากกว่า อีตรงที่ต้องแก้ไขหลายที่ครับ
แก้ที่ตัว window หรือที่ตัว Format
ขอบคุณ คุณ g0ragod อีกครั้งครับ
ผมติดส่วนนี้มาประมาณอาทิตย์กว่าแล้วครับ
ปล.แล้วสมมุติถ้ามันยังไม่ใช่ไม่ทราบว่า จะมีโอกาสเกิดจากอะไรได้อีกหรอครับ ขอบคุณครับ
การแก้ไข อาจต้องแก้ไขที่ Windows ครับ ลองตรวจสอบฟอรืแมตวันที่ของ Windows ว่าถูกต้องหรือไม่ครับ
ถ้าแก้ไขที่ Windows แล้วยังไม่ได้ ก็อาจต้องลองแก้ไขที่ Server ครับ
หรือบางทีอาจต้องแก้ไขที่ database Server ครับ
สำหรับรายละเอียดวิธีแก้ไขว่าต้องแก้ไขที่รายการไหนบ้าง ผมไม่ค่อยแม่นนัก เลยไม่กล้าตอบแบบฟันธงครับ ว่าต้องแก้ไขที่รายการใด
ขอบคุณมากครับ
ลองดู ตัวเลือก "ภูมิภาคและภาษา" ใน Control Panel ครับ