SQL7008N

Getting a SQL7008N, SQLSTATE=55019 can occur when performing a insert/update on a Db2® for iSeries table.

Problem

You may get error the following error when doing an insert or update operation on a Db2 for iSeries table:
SQL7008N REXX variable "" contains inconsistent data. SQLSTATE=55019

Cause

The Db2 for iSeries table does not have journaling enabled.

Resolution

To resolve this issue, perform one of the following:
  • Enable journaling for the Db2 for iSeries table. You may contact your Db2 for iSeries DBA.
  • If you are getting this error from your application, specify application specific Isolation level property with the value: NO COMMIT.
  • For CLI/ODBC applications:
    • Update the TXNIsolation CLI keyword with the value 32 in your db2cli.cfg:
      'db2 update cli cfg for section <dsn> using TXNIsolation 32'
      Then restart the application.
  • For .NET applications:
    • Update IsolationLevel to 'chaos' in your connection string. Or if you are using db2dsdriver.cfg, you can specify it in db2dsdriver.cfg.
  • For JDBC applications:
    • Db2 JDBC Driver does not support Isolation level NONE or NO COMMIT. You may need to use the previous solutions of enabling journaling or updating the TXNIsolation CLI keyword.
  • Alter your SQL statement to include 'WITH NONE' or 'WITH NC' at the end. For example:
    insert into <tableName> values ('a', 'b') with NC
    insert into <tableName> values ('a', 'b') with NONE