NutzCN Logo
问答 Dao.update(Object obj, FieldFilter fieldFilter, Condition cnd) 更新条件会自动增加主键
发布于 2294天前 作者 hcxxiaomo 2151 次浏览 复制 上一个帖子 下一个帖子
标签:

pojo如下:

public class WatchInfo {

	@Id
	private Long watchInfoId;

	@Column
	@Comment("imei")
	private Long imei;

//后面省略了

因为这个需要以imei来更新所有的数据,而不是根据id来更新,所以更新的代码如下:

dao.update(wi,FieldFilter.create(WatchInfo.class, true),Cnd.where("imei", "=", imei));

这样看到后台执行的sql如下:

 For example:> "UPDATE t_watch SET elderId=111,name='3333',createTime='2018-07-20 16:06:14',updateTime='2018-07-20 16:06:14'  WHERE watchInfoId='NULL'  AND  (imei=2222)"

但是我希望的执行sql是这样的:

UPDATE t_watch SET elderId=111,name='3333',createTime='2018-07-20 16:06:14',updateTime='2018-07-20 16:06:14'  WHERE imei=2222

请问除了自定义sql,能否有其他办法,执行WHERE imei=2222的sql呢?就是不根据id来更新的功能。

2 回复

update配合Chain对象

谢谢!刚才使用了,已经成功。

dao.update(WatchInfo.class, Chain.make("name", wi.getName()), Cnd.where("imei", "=", wi.getImei()));
添加回复
请先登陆
回到顶部