您好,登錄后才能下訂單哦!
本篇內(nèi)容介紹了“如何理解weed3-2.2.插入和更新”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!
源碼:https://github.com/noear/weed3 源碼:https://gitee.com/noear/weed3
支持常規(guī)賦值
String mobile="xxx"; //我的手機號不能寫 db.table("test") .set("mobile",mobile) //變量賦值 .set("sex",1) //常量賦值 .insert();
支持sql附值(這個是可以帶來方便的***) 如果值以:$開頭,表示后面為SQL代碼(不能出現(xiàn)空隔,且100字符以內(nèi)。否則視為普通字符串值)
,如下:
//比如:當(dāng)前時間賦值 db.table("test").set("log_time","$NOW()").insert(); //再比如:字段加1附值 db.table("test").set("num","$num+1") .where("id=?",1).update(); //再比如:根據(jù)另一個字段的md5,批量更新 db.table("test").set("txt_md5","$MD5(txt)") .where("id>? AND id<?",1000,2000).update(); /* 如何開啟或禁用功能?(其實,它是挺安全的)*/ //1.只控制本次操作是否使用此功能 db.table("test").usingExpr(false) // true 開啟,false 關(guān)閉 //2.全局配置開啟或關(guān)掉這個功能: WeedConfig.isUsingValueExpression=false; //全局默認(rèn)關(guān)掉
支持map附值(字段不能是數(shù)據(jù)表里沒有的..)
Map<String,Object> map = new HashMap<>(); ... //插入 db.table("test").setMap(map).insert(); //更新 db.table("test").setMap(map).where("id=?",1).update();
支持 entity 附值(字段不能是數(shù)據(jù)表里沒有的..)
UserModel user = new UserModel(); //插入 db.table("test").setEntity(user).insert(); //更新 db.table("test").setEntity(user).where("id=?",1).update();
支持(沒有則插入,有則更新)的簡化操作
//簡化方案 db.table("test") .set("mobile","111") .set("sex",1) .set("icon","http://xxxx") .updateExt("mobile"); //此代碼相當(dāng)于:(下面這個可麻煩了很多哦) if(db.talbe("test").where("mobile=?","111").exists()){ db.talbe("test") .set("mobile","111") .set("sex",1) .set("icon","http://xxxx") .insert() }else{ db.talbe("test") .set("sex",1) .set("icon","http://xxxx") .where("mobile=?","111").update(); }
支持根據(jù)情況附值(講法來怪怪的..)
//1.老套跑 var qr = db.table("test").set("sex",1); if(icon!=null){ qr.set("icon",icon); } qr.where("mobile=?","111").update(); //2.鏈?zhǔn)讲僮魈茁? db.table("test").set("sex",1).expre((tb)->{ //加個表達(dá)式 if(icon!=null){ tb.set("icon",icon); } }).where("mobile=?","111").update();
“如何理解weed3-2.2.插入和更新”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。