Как вставить несколько строк, используя mybatis для каждого оператора select в db2? - PullRequest
1 голос
/ 08 мая 2019

В нашем проекте мы используем Oracle, и теперь мы хотим, чтобы наш код поддерживал Db2 v10 для Z / OS.Есть много ситуаций, когда мы динамически вставляем несколько строк в базу данных, и это нормально для Oracle, но теперь для Db2 у нас есть проблема, потому что mybatis и db2 на самом деле не совместимы (?).

Есть ли какой-либо или любой mybatis конфиг, чтобы это исправить без использования цикла for в коде Java и вставки по отдельности (из-за проблем с производительностью)?

Спасибо за вашу помощь заранее

 INSERT INTO table
        (column 1, column 2,column 3,column 4 ,column 5 ,column 6 )
        <foreach item="element" collection="items" index="index" separator=" UNION ALL">
            SELECT
            value 1, value 2, value 3,value 4 ,
            value 5 ,value 6
            from SYSIBM.SYSDUMMY1

        </foreach>

Я получаю эту ошибку:

плохая грамматика SQL [];вложенное исключение:

com.ibm.db2.jcc.am.SqlSyntaxErrorException: ошибка SQL DB2: SQLCODE = -418, SQLSTATE = 42610, SQLERRMC = ноль, DRIVER = 4.16.53

...