我可以使用db2 jdbc驱动程序不提交Grails Web应用程序吗?

时间:2013-03-08 19:50:09

标签: grails jdbc db2 ibm-midrange journaling

我的情况:我和很多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"

2 个答案:

答案 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。 ; - )