本文介紹了AS400 DB2SQL7008:通過Spring Boot插入記錄時,表名對于操作無效的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!
問題描述
我們在DB2中有由OS/400命令直接創建的模式/庫。因此,如果我們要新建,則默認情況下不會為任何物理文件(表)啟用日志記錄。我們正在使用數據庫遷移工具,如Liqubase,用于所有數據庫更改,如在Spring Boot中創建表/視圖。在嘗試插入或更新時,我在TABLE_NAME中收到錯誤";java.sql.SQLException:[SQL7008]X對操作&Quot;無效。此錯誤是由于未通過Liquibase對新創建的表進行日志記錄。現在,我正在嘗試尋找以下可能性(如果可能)
-
是否可以在OS/400中創建的DB2庫9下創建表(SQL),以便在插入或更新時不需要日志記錄?
是否有可能通過Java/Spring Boot在表上創建日記帳?
或任何建議,而不是每次在DB2端記錄表?
請提出您的意見
推薦答案
使用提交控制(事務隔離)時,需要記錄表的日志。
您有兩個選項:
-
關閉承諾控制
啟用表的日志記錄
對于選項1,可以包括
transaction isolation=none;
在連接字符串中,請參閱this question以了解更多詳細信息
對于選項2,如果使用SQLCREATE SCHEMA
和CREATE TABLE
命令創建庫和文件,則將自動記錄表。
還可以在通過Create Library(CRTLIB)命令創建庫后使用Start Journal Library (STRJRNLIB)命令。此后,當您在庫中創建表或物理文件時,將自動記錄該表或物理文件。
這篇關于AS400 DB2SQL7008:通過Spring Boot插入記錄時,表名對于操作無效的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,