Я пытался вставить список в базу данных, но у меня возникла ошибка: org.springframework.jdbc.BadSqlGrammarException: операция SqlSession; плохая грамматика SQL []; вложенным исключением является java.sql.SQLException: ORA-00913: слишком много значений (...).
Код, который я использовал:
<insert id="insertListMyObject" parameterType="java.util.List" >
INSERT INTO my_table
(ID_ITEM,
ATT1,
ATT2)
VALUES
<foreach collection="list" item="item" index="index" open="(" close=")" separator=",">
#{item.idItem, jdbcType=BIGINT},
#{item.att1, jdbcType=INTEGER},
#{item.att2, jdbcType=STRING}
</foreach>
</insert>
Мой дао вызывает метод:
SqlSessionTemplate().insert(MAPPER+".insertListMyObject", parameterList);
Где список параметров:
List<MyObjects>.
Кто-нибудь знает, что это за ошибка? Или, если существует лучший способ выполнить операцию множественной вставки.
Большое спасибо!