ERROR io.seata.rm.datasource.sql.struct.cache.AbstractTableMetaCache

 

2020-03-06 12:55:22.256 [mro: ][http-nio-8003-exec-7] ERROR io.seata.rm.datasource.sql.struct.cache.AbstractTableMetaCache - get table meta error:Failed to fetch schema of order_detail
java.sql.SQLException: Failed to fetch schema of order_detail
	at io.seata.rm.datasource.sql.struct.cache.MysqlTableMetaCache.fetchSchema(MysqlTableMetaCache.java:118)
	at io.seata.rm.datasource.sql.struct.cache.AbstractTableMetaCache.getTableMeta(AbstractTableMetaCache.java:70)
	at io.seata.rm.datasource.AbstractConnectionProxy.prepareStatement(AbstractConnectionProxy.java:114)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.apache.ibatis.logging.jdbc.ConnectionLogger.invoke(ConnectionLogger.java:55)
	at com.sun.proxy.$Proxy352.prepareStatement(Unknown Source)
	at org.apache.ibatis.executor.statement.PreparedStatementHandler.instantiateStatement(PreparedStatementHandler.java:87)
	at org.apache.ibatis.executor.statement.BaseStatementHandler.prepare(BaseStatementHandler.java:88)
	at org.apache.ibatis.executor.statement.RoutingStatementHandler.prepare(RoutingStatementHandler.java:59)
	at org.apache.ibatis.executor.SimpleExecutor.prepareStatement(SimpleExecutor.java:85)
	at org.apache.ibatis.executor.SimpleExecutor.doUpdate(SimpleExecutor.java:49)

修改,增加@Param("list")

   /**
     * 批量插入
     */
    int batchInsert(@Param("list") List<OrderDetail> detailList);

<insert id="addBatch" parameterType="list">
   insert
   into
   order_detail(<include refid="Base_Column_List"/>)
   values
   <foreach collection="list" item="item" index="index" separator=",">
      (
      #{item.id},#{item.orderId},#{item.goodsName},#{item.packagingMode},#{item.packagesNumber},
      #{item.weight},#{item.volume},#{item.unitPrice},#{item.totalAmount},
      #{item.createUser},NOW(), #{item.updateUser}, #{item.updateTime},#{item.deleted},#{item.unitName}
      )
   </foreach>
</insert>

改了批量插入寫法,還是有問題。

最後發現, order_detail的主鍵沒有了,加上主鍵就可以了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章