测试使用HSQLDB插入所有Oracle查询

时间:2014-12-09 12:00:17

标签: oracle unit-testing hsqldb

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

1 个答案:

答案 0 :(得分:0)

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')