[DB2] เมื่อ DateTimeOffSet ของ C# ไม่สามารถจัดเก็บตรงๆได้ใน DB2

พอดีได้เข้ามาชวยแก้ปัญหาของน้องในทีมครับ เนื่องจากไปเจอว่า Library ที่ตั้ง Schedule ของ C# มันต้องการ Parameter ที่เป็น DateTimeOffSet แต่ DataType นี้ มีนดันใช้งานได้กับ MS SQL Server เท่านั้นครับ กลับมาดูที่ DateTimeOffSet ดีกว่า มันเก็บอะไรบ้าง โดยแบ่งได้ 2 ส่วนครับ พอรู้จัก DateTimeOffset แล้ว และนำ Code ชุดเดียวกันมาทดสอบใช้งานตัว Dapper มัน Error ขึ้นครับ เนื่องจากไม่สามารถ Mapping C# Data Type DateTimeOffSet กับ DB2 Data Type ได้ครับ พอลองไปศึกษา DB2 ตัว Data Type ที่เหมาะสม คือ TIMESTAMP แต่ปัญหา คือ ว่า เวอร์ชันที่ผมใช้งานอยู่ DB2 11.5.4 for Linux มีแต่ TIMESTAMP แต่ไม่มี TIME ZONE ถ้าใน DB2 ต้องดูจาก Keyword TIMESTAMP WITH TIME ZONE ซึ่งมีแล้วในเวอร์ชัน Db2® for z/OS คงอีกสักพักที่ทาง DB2 Port ลงมาให้ Windows / Linux ใช้งานครับ ทุกปัญหามีทางแก้ครับ !!! ในเมื่อ DB2 มันไม่รู้จัก TIMESTAMP + TIMEZONE แนวทางการแก้่ไข มี 2 วิธีครับ วิธีแรก…







