java - ibatis 对于 "Insert"命令返回 NULL,而不是受影响的行数

标签 java mysql mybatis ibatis

使用 ibatis 和 MySQL,创建了一个映射器接口(interface),如下所示:

INSERT INTO <_tableName>(<listOfFieldsNames>) SELECT <listOfValues> FROM DUAL WHERE NOT EXISTS (SELECT * FROM <_tableName> WHERE <condition>);

Jhe java接口(interface)设置为返回Integer,因为我想获取受影响的行数。

问题是它总是返回 NULL。

知道如何修复它以便我获得受影响的行数...?

谢谢

最佳答案

只能谈论MyBatis,不能谈论Ibatis,但我建议返回int,而不是Integer。如果没有插入,则插入的行数为 0,而不是 null。另请参阅Java documentation对于 MyBatis。

关于java - ibatis 对于 "Insert"命令返回 NULL,而不是受影响的行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31987909/

相关文章:

mysql - 如何使用 cakephp v3.x 绕过 MAX_JOIN_SIZE

java - ArrayList.ensureCapacity() 有性能优势吗?

java - Spring Boot - REST 和 SOAP 组合

java - 如何通过多个属性使用子类型将 JSON 反序列化为类?

mysql - 无法从 Node.js 连接到 MySql 服务器

mysql - Joomla 网站 - Jomsocial SQL 错误

java - 长时间运行查询超时

java - 我可以在不重新部署的情况下更改 Mybatis 中的 sql 查询吗?

java - 在 Wildfly 上的 MyBatis 中使用 REQUIRES_NEW JTA 事务类型

java - 为什么 LinkedBlockingQueue 的头部不是私有(private)的?