我开始使用DBUtils库,但是我的大多数查询都是“在重复键更新中插入”,但是没有找到有关如何使用QueryRunner对象实现该信息。
有办法吗?
答案 0 :(得分:0)
不知道问题出在哪里……这是一个示例,实际上,您在UPSERT
上但还用新日期更新了audit_date字段,并用当前登录的用户更新了audit_user。
new QueryRunner().insert(connection, "INSERT INTO security\n"
+ "(user_name,\n"
+ "domain,\n"
+ "security_permissions,\n"
+ "audit_user)\n"
+ "VALUES\n"
+ "(?,?,?,?)ON DUPLICATE KEY UPDATE security_permissions= values(security_permissions),audit_user = values(audit_user), audit_date=CURRENT_TIMESTAMP;", resultHandler,
securityTableModelRow.getUser_name(),
securityTableModelRow.getDomain(),
securityTableModelRow.getSecurity_permissions(),
Main.security.getCurrentLoggedInUser());