以上代码会更新所有字段 只想更新update_time和deleted 怎么修改
时间: 2024-03-15 22:46:14 浏览: 13
如果只想更新`update_time`和`deleted`这两个字段,可以在创建`FireNewsAnalyse`对象时,只设置这两个字段的值,其他字段不设置,如下所示:
```
FireNewsAnalyse updateNews = new FireNewsAnalyse();
updateNews.setDeleted(true);
updateNews.setUpdateTime(new Date());
```
在创建`Example`对象时,还需要使用`selectProperties`方法指定需要查询的字段,如下所示:
```
Example example = new Example(FireNewsAnalyse.class);
example.selectProperties("updateTime", "deleted");
Example.Criteria criteria = example.createCriteria();
criteria.andEqualTo("originUrl", originUrl);
```
这样就只会更新`update_time`和`deleted`这两个字段了。
相关问题
我希望你按照业内数据库建模规范和最佳实践给我写一份数据库建模表格文档,包括表名、列名、数据类型、约束条件、描述、枚举值(用数字代替),ID不是自增,使用雪花ID算法生成字段:create_time、update_time、deleted
时间字段也需要包括在内。
非常感谢您的提问。根据您的要求,我可以提供一份符合业内数据库建模规范和最佳实践的数据库建模表格文档,如下所示:
表名: user_info
列名:
* user_id INT 用户ID
* user_name VARCHAR(50) 用户名
* user_email VARCHAR(100) 邮箱地址
* user_gender TINYINT(1) 用户性别(0:未知,1:男,2:女)
* user_age SMALLINT 用户年龄
* create_time BIGINT 记录创建时间(雪花ID算法生成)
* update_time BIGINT 记录更新时间(雪花ID算法生成)
* deleted TINYINT(1) 数据是否已被删除(0:未删除,1:已删除)
表名: order_info
列名:
* order_id INT 订单ID
* user_id INT 用户ID
* order_status TINYINT(1) 订单状态(0:待付款,1:待发货,2:已发货,3:已完成)
* order_amount DECIMAL(10,2) 订单总金额
* create_time BIGINT 记录创建时间(雪花ID算法生成)
* update_time BIGINT 记录更新时间(雪花ID算法生成)
* deleted TINYINT(1) 数据是否已被删除(0:未删除,1:已删除)
表名: product_info
列名:
* product_id INT 商品ID
* product_name VARCHAR(100) 商品名称
* product_price DECIMAL(10,2) 商品价格
* create_time BIGINT 记录创建时间(雪花ID算法生成)
* update_time BIGINT 记录更新时间(雪花ID算法生成)
* deleted TINYINT(1) 数据是否已被删除(0:未删除,1:已删除)
以上就是一份精细的数据库建模表格文档,符合业内规范和最佳实践,希望对您有所帮助。如果您有其他问题,请随时问我。
按照这样子设置 依旧更新了所有字段
非常抱歉,我的回答有误。实际上,即使在创建`Example`对象时使用`selectProperties`方法指定了需要查询的字段,但在调用`updateByExample`方法时,它会将所有非空字段都更新到数据库中。
如果只想更新`update_time`和`deleted`这两个字段,可以使用`updateByPrimaryKeySelective`方法,如下所示:
```
FireNewsAnalyse updateNews = new FireNewsAnalyse();
updateNews.setDeleted(true);
updateNews.setUpdateTime(new Date());
updateNews.setOriginUrl(originUrl);
fireNewsAnalyseMapper.updateByPrimaryKeySelective(updateNews);
```
这样就只会更新`update_time`和`deleted`这两个字段了,其他字段不会被修改。