MP的更新刪除操作

更新操作方法實(shí)戰(zhàn)
    @Test
    public void updateById(){
        User user = new User();
        user.setId(2L);
        user.setAge(21);
        user.setEmail("abc@qq.com");

        int rows = userMapper.updateById(user);
        System.out.println("影響記錄數(shù):"+rows);
    }

    @Test
    public void updateByWrapper(){
        //此條件出現(xiàn)在where后
        UpdateWrapper<User> updateWrapper = new UpdateWrapper<>();
        updateWrapper.eq("name","Jom").eq("age",28);

        //此條件出現(xiàn)在set后
        User user = new User();
        user.setAge(29);
        user.setEmail("abc@qq.com");

        int rows = userMapper.update(user,updateWrapper);
        System.out.println("影響記錄數(shù):"+rows);
    }

//    UPDATE user SET age=?, email=? WHERE age=? AND email=? AND (name = ? AND age = ?)
    @Test
    public void updateByWrapper2(){
        //此條件設(shè)置后放到updateWrapper構(gòu)造函數(shù)后,會出現(xiàn)在where后面
        User whereUser = new User();
        whereUser.setEmail("abc2@qq.com");

        //此條件出現(xiàn)在where后,會和上面的條件重復(fù)出現(xiàn)
        UpdateWrapper<User> updateWrapper = new UpdateWrapper<>(whereUser);
        updateWrapper.eq("name","Jom").eq("age",28);

        //此條件出現(xiàn)在set后
        User user = new User();
        user.setAge(29);
        user.setEmail("abc@qq.com");

        int rows = userMapper.update(user,updateWrapper);
        System.out.println("影響記錄數(shù):"+rows);
    }

//    UPDATE user SET age=? WHERE (name = ? AND age = ?)
    @Test
    public void updateByWrapper3(){
        //此條件出現(xiàn)在where后,set字段少時(shí)可以直接加到后面
        UpdateWrapper<User> updateWrapper = new UpdateWrapper<>();
        updateWrapper.eq("name","Jom").eq("age",29).set("age",30);

        int rows = userMapper.update(null,updateWrapper);
        System.out.println("影響記錄數(shù):"+rows);
    }

//    UPDATE user SET age=? WHERE (name = ? AND age = ?)
    @Test
    public void updateByWrapperLambda(){
        //此條件出現(xiàn)在where后,set字段少時(shí)可以直接加到后面
//        UpdateWrapper<User> updateWrapper = new UpdateWrapper<>();
//        updateWrapper.eq("name","Jom").eq("age",29).set("age",30);
        //lambda寫法
        LambdaUpdateWrapper<User> lambdaUpdateWrapper = Wrappers.<User>lambdaUpdate();
        lambdaUpdateWrapper.eq(User::getName,"Jom").eq(User::getAge,30).set(User::getAge,31);

        int rows = userMapper.update(null,lambdaUpdateWrapper);
        System.out.println("影響記錄數(shù):"+rows);
    }

//    true
    @Test
    public void updateByWrapperLambdaChain(){
        //lambda的鏈?zhǔn)綄懛?        boolean update = new LambdaUpdateChainWrapper<User>(userMapper)
                .eq(User::getName,"Jom").eq(User::getAge,31).set(User::getAge,32).update( );

        System.out.println("更新是否成功:"+update);
    }
刪除操作方法實(shí)戰(zhàn)
//    DELETE FROM user WHERE id=?
    @Test
    public void deleteById(){
        int rows = userMapper.deleteById(5L);
        System.out.println("影響記錄數(shù):"+rows);
    }

    @Test
    public void deleteByMap(){
        Map<String,Object> map = new HashMap<>();
        map.put("name","Sandy");
        map.put("age",21);
        int rows = userMapper.deleteByMap(map);
        System.out.println("刪除記錄數(shù)為:"+rows);
    }

//    DELETE FROM user WHERE id IN ( ? , ? , ? )
    @Test
    public void deleteBatchIds(){
        int rows = userMapper.deleteBatchIds(Arrays.asList(1320737652386902017L,1318216907102400513L,1318215819104182273L));
        System.out.println("刪除記錄數(shù)為:"+rows);
    }

//    DELETE FROM user WHERE (id = ? OR age > ?) 
    @Test
    public void deleteByWrapper(){
        LambdaQueryWrapper<User> lambdaQueryWrapper = new LambdaQueryWrapper<>();
        lambdaQueryWrapper.eq(User::getId,3L).or().gt(User::getAge,40);
        int rows = userMapper.delete(lambdaQueryWrapper);
        System.out.println("刪除條數(shù)為:"+rows);
    }
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

友情鏈接更多精彩內(nèi)容