DB类的一些使用demo,批量新增,新增,新增去重,查询等原创
9人赞赏了该文章
1,577次浏览
编辑于2023年02月24日 20:35:43
DB类的一些使用的简单demo,仅供参考
List<Object[]> list = new ArrayList<>(); Object[] objects1 = new Object[]{1L,"a", "{aaaaaaaaaa}"}; Object[] objects2 = new Object[]{2L,"b", "{bbbbbbbb}"}; list.add(objects1); list.add(objects2); /** 插入去重 begin KSQl不支持插入去重,脚本需要指定数据库方言*/ // mysql数据库批量新增,有重复数据则忽略(根据主键和唯一索引来判定) String sql_i = "/*dialect*/ insert ignore into tk_kdec_midtable (fid,fk_kdec_textfield,fk_kdec_largetextfield) values (?,?,?)"; int[] ints1 = DB.executeBatch(DBRoute.base, sql_i, list); // mysql数据库批量新增,有重复数据则修改(根据主键和唯一索引来判定) String sql_u = "/*dialect*/ insert into tk_kdec_midtable (fid,fk_kdec_textfield,fk_kdec_largetextfield) values (?,?,?) ON DUPLICATE KEY UPDATE fk_kdec_largetextfield='{}'"; int[] ints2 = DB.executeBatch(DBRoute.base, sql_u, list); /** 插入去重 end */ /** 插入数据 begin */ String sql1 = "insert into tk_kdec_midtable (fid,fk_kdec_textfield,fk_kdec_largetextfield) values (?,?,?)"; // 单条数据新增 boolean execute = DB.execute(DBRoute.base, sql1, objects1); // 批量新增 int[] ints = DB.executeBatch(DBRoute.base, sql1, list); /** 插入数据 end */ /** 查询数据 begin */ // 查询数据 String sql2 = "select fid from tk_kdec_billdemo_0615 where fid = ?"; Object[] objects = new Object[]{"1188383694197384192"}; Long fid = DB.query(DBRoute.base, sql2, objects, new ResultSetHandler<Long>() { @Override public Long handle(ResultSet resultSet) throws Exception { // 处理结果集并返回 while (resultSet.next()) { long fid = resultSet.getLong("fid"); return fid; } return null; } }); System.out.println(fid); /** 查询数据 end */
赞 9
9人点赞
还没有人点赞,快来当第一个点赞的人吧!
打赏
0人打赏
还没有人打赏,快来当第一个打赏的人吧!
推荐阅读