代码之家  ›  专栏  ›  技术社区  ›  Brian Deterling

如何使用hibernate/jdbc为DB2设置当前模式?

  •  13
  • Brian Deterling  · 技术社区  · 14 年前

    在我的JDBC URL连接中,我曾经使用currentSchema=myschema;但是我们使用的DB2版本不再支持它,显示错误“在目标服务器上不允许”currentSchema“属性”。我已经尝试使用hibernate.default_模式,但它不会自动将该模式添加到我的表名中。我不想在每个@table注释上设置模式,因为我需要在测试和生产之间更改它。是否有其他方法设置连接或通过休眠?

    更新:它一定是驱动程序版本问题。我升级到了更高版本的驱动程序,当前模式工作正常。

    3 回复  |  直到 12 年前
        1
  •  5
  •   Romain Hippeau    14 年前

    9.7(最新)数据库的所有属性都在这里…

    https://publib.boulder.ibm.com/infocenter/db2luw/v9r7/index.jsp?topic=/com.ibm.db2.luw.apdv.java.doc/doc/r0052607.html

    用途:

    当前图式

    指定用于限定动态准备的SQL语句中未限定的数据库对象的默认架构名称。此属性的值设置数据库服务器上当前架构特殊寄存器中的值。架构名称区分大小写,必须以大写字符指定。

        2
  •  29
  •   Stéphane B. Ronan Quillevere    12 年前

    使用DB2JDBC类型4驱动程序( com.ibm.db2.jcc.db2driver )我正在使用此URL连接:

    jdbc:db2://<HOST>:<PORT>/<DATABASE>:currentSchema=<SCHEMA>;
    

    来源: http://publib.boulder.ibm.com/infocenter/db2luw/v8/index.jsp?topic=/com.ibm.db2.udb.doc/ad/rjvdsprp.htm

        3
  •  0
  •   ancora imparo    12 年前

    使用驱动程序'com.ibm.as400.access.as400jdbcdriver'…'连接到AS400上的数据库的URL是什么?URL中包含的currentSchema在这种情况下不起作用…