我的情况:我和很多RPG程序员一起工作,他们以不创建日志的方式在IBM-i上创建了文件。我创建了一个Grails应用程序,它使用db2 jdbc驱动程序连接到文件并更新,插入等。我收到一个错误:
com.ibm.db2.jdbc.app.DB2DBException: MYFILE in MYLIB not valid for operation.
Cause . . . . . : The reason code is 3 . Reason codes are:
...blah blah blah...
3 -- MYFILE not journaled, no authority to the journal, or the journal state is *STANDBY. Files with an RI constraint action of CASCADE, SET NULL, or SET DEFAULT must be journaled to the same journal.
...blah blah blah...
我知道我可以用STRJRNPF开始记录该文件,但我宁愿不跟上它(请不要责骂)。是否有一个db2 jdbc连接URL的参数,我可以设置为让它知道不尝试提交?
这是我目前的连接信息:
dataSource
{
dbCreate = "update" // one of 'create', 'create-drop', 'update', 'validate', ''
pooled = true
url = "jdbc:db2:*local;naming=system;libraries=LIBS;errors=full"
driverClassName = "com.ibm.db2.jdbc.app.DB2Driver"
username = "user"
password = "pass"
dialect = org.hibernate.dialect.DB2400Dialect.class
}
编辑:以下是我尝试过的内容:
url = "jdbc:db2:*local;naming=system;libraries=LIBS;errors=full;transaction isolation=none"
答案 0 :(得分:1)
最后,这最终与Grails / Hibernate有关。以下是数据源最终的结果:
dataSource
{
dbCreate = "update" // one of 'create', 'create-drop', 'update', 'validate', ''
pooled = true
url = "jdbc:db2:*local;naming=system;libraries=LIBS;errors=full;transaction isolation=none"
driverClassName = "com.ibm.db2.jdbc.app.DB2Driver"
username = "user"
password = "pass"
dialect = org.hibernate.dialect.DB2400Dialect.class
properties{
defaultTransactionIsolation = 0
}
}
感谢@Buck Calabro的评论和question。
答案 1 :(得分:-1)
您认为“跟上它”的含义是什么?默认情况下,系统会为您执行大量日记管理。欢迎来到IBM i。 ; - )