【问题标题】:HSQLDB ROWNUM compatibility with OracleHSQLDB ROWNUM 与 Oracle 的兼容性
【发布时间】:2011-09-30 13:40:04
【问题描述】:

HSQLDB changelog 声明 ROWNUM() 已添加到 v2.2.0 中,我在针对内存中 HSQLDB 运行集成测试时使用它没有任何问题。

但是,我想对真正的 Oracle 10g 数据库运行相同的测试,但查询失败,因为伪列名为 ROWNUM。有没有一种简单的方法可以编写在两种环境中都可以使用的单个查询字符串?

【问题讨论】:

    标签: oracle hsqldb rownum


    【解决方案1】:

    ROWNUM() 函数在 HSQLDB 2.2.x 及更高版本中默认可用。如果开启Oracle语法兼容模式,也可以使用ROWNUM。

    此语句启用它:

    SET DATABASE SQL SYNTAX ORA TRUE
    

    或者使用连接属性sql.syntax_ora=true

    【讨论】:

    • 完美!我不知道存在:-)
    • 我刚刚发现了一个相关的问题stackoverflow.com/questions/4579078/…
    • 请注意,sql.syntax_ora=true 必须在连接 URL 中给出:例如<property name="hibernate.connection.url" value="jdbc:hsqldb:mem:spring;sql.syntax_ora=true"/>,不在<property name="sql.syntax_ora" value="true"/>
    猜你喜欢
    • 2014-04-05
    • 1970-01-01
    • 2018-10-15
    • 2016-05-29
    • 2020-05-30
    • 2016-07-26
    • 1970-01-01
    • 1970-01-01
    • 2012-02-26
    相关资源
    最近更新 更多