尝试插入时 MariaDB 错误 "Current position is after the last row"

MariaDB Error "Current position is after the last row" when trying to insert

我正在开发一个 Java 应用程序版本 1.8.0.60,mariadb jdbc 客户端是版本 1.2.0

当我尝试将记录插入其中一个表时出现异常: "Current position is after the last row"

但是,如果我复制确切的 INSERT 语句并使用 HeidiSQL 进行插入,它可以正常工作,据我所知 SQL.

插入 tblModbusData ( mintAddress,tintSEM,tintModule,tintChannel ) 价值观 ( '301001','1','1','0')

为什么?

我通过将 SQL 包装到一个存储过程中并执行它解决了这个问题:

CALL funCreateModbusEntry(301001,1,1,0);

没有更多错误,java 执行代码完全相同:

语句 st = mcon.createStatement(); st.executeUpdate(strSQL, Statement.RETURN_GENERATED_KEYS);

这是简化但基本上是这样。