DB2 for i アダプタで書き込み処理を実行した際に、エラーコード : SQL7008 のエラーが発生します

Avatar
dstn

Question

DB2 for i アダプタで書き込み処理を実行した際に、エラーコード : SQL7008 のエラーが発生します。

原因と対処方法を教えてください。
 

Answer

■原因、発生条件

エラーは、データベース側で発生しています。
(このため、詳細な原因に関しては、接続先の開発元にご確認ください。)

過去事例では、ジャーナルが存在しない、または、ジャーナル処理が
停止しているライブラリに対して、commit や rollback を実行した場合に
発生していました。

以降は過去事例を元に対処方法をご案内します。

■対処方法

どちらか一方の方法で対応してください。

・ジャーナル処理を追加、または、実行する
 書き込み処理の対象になっているライブラリでジャーナル処理を
 追加するか、停止している場合には、実行してください。

・自動コミットを設定する
 グローバルリソースの「自動コミットを行う」にチェックをつけてください。
 自動コミットを有効にしたときには、書き込み処理時に、commit や
 rollback を実行しないため、エラーを回避することができます。

 ただし、トランザクションにも参加できなくなる(後続の処理が失敗したとき
 にもロールバックせず、そのまま処理をコミットする)のでご注意ください。

 詳細は「参考情報」からヘルプをご参照ください。

 

参考情報

・グローバルリソースのプロパティ(DB2 for i)
 http://patch.appresso.com/DataSpider/help/latest/doc/help/ja/adapter/database/db2udb_iseries_resource.html

 「自動コミットを行う」にチェックをつけた場合、DB2 に接続する際に、
 Connection.setAutoCommit(true)メソッドを呼び出します。
 チェックを外した場合は、Connection.setAutoCommit(false)
 メソッドを呼び出します。

・DB2 のジャーナル処理、setAutoCommit の詳細
 こちらで確認できた公開情報に関して以下にご案内いたします。

 ​・ジャーナル処理(※外部サイト)
  http://publib.boulder.ibm.com/html/as400/v5r1/ic2962/index.htm?info/sqlp/rbafymstjourg.htm
 ・JDBC トランザクションのコミットまたはロールバック(※外部サイト)
  https://www.ibm.com/support/knowledgecenter/ja/SSEPGG_9.7.0/com.ibm.db2.luw.apdv.java.doc/src/tpc/imjcc_tjvcmtrl.html

 ただし、いずれも DB2 の機能となりますので、詳細な情報が必要な場合には
 開発元にお問い合わせをお願いします。 
 



[注意事項]
  • このFAQの内容は2017年3月時点のものです。内容は予告なく変更されることがありますので、ご注意ください。
  • 一部にDataSpider Servistaサポートサイトへのリンクを含むことがあります。サポートサイトにアクセスするには、DataSpiderのサポート契約が必要です。


ID:Q267

コメント

記事コメントは受け付けていません。

Powered by Zendesk