使用mybatis将java映射插入数据库时​​出错

问题描述

我正在尝试使用 mybatis 将 HashMap 插入到数据库列中。我的代码如下图

@Insert({ 
        "<script>","INSERT INTO msg_monitored_grp(","message_id,","monitored_grp_id,"monitored_grp_name,"record_creation_date) ","VALUES ","<foreach collection='monitoredGroupsMap' index='key' item='value' ","separator=','>","(#{messageId},"#{key},"#{value},"#{recordCreationDate})","</foreach>","</script>"     
    })
    void insert(MessageMonitoredGroup monitoredGroupsMap);

我收到以下错误

### The error may exist in com/db/lrc/commsurv/alert/recordstore/consumer/persistence/MessageMonitoredGroupMapper.java (best guess)
### The error may involve com.db.lrc.commsurv.alert.recordstore.consumer.persistence.MessageMonitoredGroupMapper.insert-Inline
### The error occurred while setting parameters
### sql: INSERT INTO msg_monitored_grp( message_id,monitored_grp_id,monitored_grp_name,record_creation_date)  VALUES     (?,?,?),(?,?)
### Cause: java.sql.sqlSyntaxErrorException: ORA-00933: sql command not properly ended

; bad sql grammar []; nested exception is java.sql.sqlSyntaxErrorException: ORA-00933: sql command not properly ended

    at org.springframework.jdbc.support.sqlExceptionSubclasstranslator.doTranslate(sqlExceptionSubclasstranslator.java:93) ~[spring-jdbc-5.2.1.RELEASE.jar:5.2.1.RELEASE]
    at org.springframework.jdbc.support.AbstractFallbacksqlExceptionTranslator.translate(AbstractFallbacksqlExceptionTranslator.java:72) ~[spring-jdbc-5.2.1.RELEASE.jar:5.2.1.RELEASE]
    at org.springframework.jdbc.support.AbstractFallbacksqlExceptionTranslator.translate(AbstractFallbacksqlExceptionTranslator.java:81) ~[spring-jdbc-5.2.1.RELEASE.jar:5.2.1.RELEASE]
    at org.mybatis.spring.MyBatisExceptionTranslator.translateExceptionIfPossible(MyBatisExceptionTranslator.java:91) ~[mybatis-spring-2.0.6.jar:2.0.6]
    at org.mybatis.spring.sqlSessionTemplate$sqlSessionInterceptor.invoke(sqlSessionTemplate.java:441) ~[mybatis-spring-2.0.6.jar:2.0.6]
    at com.sun.proxy.$Proxy83.insert(UnkNown Source) ~[na:na]
    at org.mybatis.spring.sqlSessionTemplate.insert(sqlSessionTemplate.java:272) ~[mybatis-spring-2.0.6.jar:2.0.6]
    at org.apache.ibatis.binding.MapperMethod.execute(MapperMethod.java:62) ~[mybatis-3.5.6.jar:3.5.6]
    at org.apache.ibatis.binding.MapperProxy$PlainMethodInvoker.invoke(MapperProxy.java:152) ~[mybatis-3.5.6.jar:3.5.6]
    at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:85) ~[mybatis-3.5.6.jar:3.5.6]
    at com.sun.proxy.$Proxy96.insert(UnkNown Source)

请你告诉我这里有什么问题。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)