[DB2] SQL1159 Initialization error with DB2 .NET Data Provider / SQLSTATE IM004, Error Reason Code 10

พอดี Application ที่ทำตัวเป็นลูกครึ่งผมระหว่างระบบเก่า และใหม่ จึงมีการเชื่อมต่อเข้ากับ DB2 2 แบบ ได้แก่ ODBC และ DB2 .NET Data Provider และพบ Error ดังนี้

สำหรับตัว ODBC มีรูปแบบ Error ดังนี้

  • รูปแบบ Error สำหรับตัว ODBC
ODBC application and receive a message such as the following:
SQLSTATE = IM004
Native error = 0
Msg:[Microsoft][ODBC Driver Manager] Driver's SQLAllocHandle on SQL_HANDLE_ENV failed.
  • การแก้ไข: ให้ไปเพิ่มสิทธิของ User ที่ใช้งาน Application ให้อยู่ในกลุ่ม DB2ADMNS หรือ DB2USERS ครับ

สำหรับตัว DB2 .NET Data Provider มีรูปแบบ Error ดังนี้

  • รูปแบบ Error สำหรับตัว DB2 .NET Data Provider
SQL1159 Initialization error with DB2 .NET Data Provider, reason code 10, tokens 0.0.0, 10.5.3
  • การแก้ไข:
    • ให้ไปเพิ่มสิทธิของ User ที่ใช้งาน Application ให้อยู่ในกลุ่ม DB2ADMNS หรือ DB2USERS ครับ
    • ตรวจสอบวาง DLL db2app.dll หรือ db2app64.dll (แล้วแต่บิตของ Windows เป็น 32 หรือ 64 บิต) ไว้ในโฟลเดอร์เดียวกับ Application ของเรา และอย่าลืมตรวจสอบ เวอร์ชั่นของตัว ibm.data.db2.dll ให้สอดคล้องกับตัว db2app.dll หรือ db2app64.dll ด้วยนะครับ

Reference


Discover more from naiwaen@DebuggingSoft

Subscribe to get the latest posts to your email.