【问题标题】:Testing Insert All Oracle query with HSQL DB使用 HSQL DB 测试插入所有 Oracle 查询
【发布时间】:2014-12-09 12:00:17
【问题描述】:

我有一个关于如何解决以下问题的疑问。 我得到了一个查询,它尝试使用 INSERT ALL INTO 语句将多行插入到 oracle db 表中。 (并且此语法特定于 ORACLE)。但是我们在测试用例中使用 hsqldb 作为内存数据库。 (仅在测试配置文件中) 问题是 HSQL DB 将不接受 INSERT ALL INTO sql 语法。因此,我们必须跳过此方法的测试用例,或者编写一个插入单个记录的查询并使用 java for 循环调用该查询。有人可以就最好的方法提出建议吗?我假设从 java for 循环调用插入不会对性能造成严重影响,因为循环不会超过大约 20-30 次迭代。任何帮助,将不胜感激。谢谢

【问题讨论】:

    标签: oracle unit-testing hsqldb


    【解决方案1】:

    Oracle INSERT ALL 允许将多行插入到单个或多个表中。

    HSQLDB 允许使用以下语法将多行插入到同一个表中:

    INSERT INTO t (col1, col2, col3) VALUES
      ('val1_1', 'val1_2', 'val1_3'),
      ('val2_1', 'val2_2', 'val2_3'),
      ('val3_1', 'val3_2', 'val3_3')
    

    【讨论】:

      猜你喜欢
      • 2015-02-02
      • 2016-01-12
      • 2017-08-04
      • 1970-01-01
      • 2018-11-04
      • 2017-09-29
      • 1970-01-01
      • 2021-09-01
      • 1970-01-01
      相关资源
      最近更新 更多