2014-12-09 40 views
0

我有一個關於如何處理下面問題的決定。 我收到了一個查詢,它試圖使用INSERT ALL INTO語句將多行插入到Oracle數據庫表中。 (這個語法是特定於ORACLE的)。但是我們在內存數據庫中使用hsqldb作爲我們的測試用例。 (僅在測試配置文件中) 問題是HSQL DB不接受INSERT ALL INTO sql語法。所以我們必須跳過這個方法的測試用例,或者編寫一個插入單個記錄並使用java for循環調用查詢的查詢。有人可以請建議什麼是最好的方法?我假設從Java for循環中調用插入操作時不會有嚴重的性能問題,因爲循環不會超過大約20-30次迭代。任何幫助,將不勝感激。謝謝測試使用HSQL DB插入所有Oracle查詢

回答

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