DBUtils QueryRunner 在重复键更新时插入
DBUtils QueryRunner insert on duplicate key update
我开始使用 DBUtils 库,但我的大部分查询都是 "INSERT ON DUPLICATE KEY UPDATE",我重新搜索了但没有找到有关如何使用 QueryRunner 对象实现它的信息。
有办法吗?
不确定问题出在哪里...这是一个示例,实际上,您 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());
我开始使用 DBUtils 库,但我的大部分查询都是 "INSERT ON DUPLICATE KEY UPDATE",我重新搜索了但没有找到有关如何使用 QueryRunner 对象实现它的信息。
有办法吗?
不确定问题出在哪里...这是一个示例,实际上,您 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());