Yii2 批量插入、更新數(shù)據(jù)實(shí)例
在使用yii2開(kāi)發(fā)項(xiàng)目時(shí),有時(shí)候會(huì)遇到這樣的情況:
向后臺(tái)發(fā)送多條數(shù)據(jù),其中一些數(shù)據(jù)已經(jīng)存在記錄,只需要對(duì)其部分字段的值進(jìn)行修改;而另一部分的數(shù)據(jù)則需要新添加進(jìn)去.
這就需要對(duì)添加的數(shù)據(jù)進(jìn)行判斷,其中一些執(zhí)行update,剩下的執(zhí)行insert
代碼如下,不對(duì)的地方請(qǐng)指教:
//批量更新,并將需要批量插入的數(shù)據(jù)放入數(shù)組中 foreach($goods as $k => $v) { if(yourModel::updateAllCounters( ['goods_num' => $v], ['goods_id' => $k,'user_id' => $id] )) { continue;//如果已經(jīng)更新,則跳過(guò)此次循環(huán),到下一次 } $data[] = [ 'user_id' => $id, 'goods_id' => $k, 'goods_num' => $v, 'created_time' => $time, ] } //再執(zhí)行批量插入 if (isset($data)) { Yii::$app->db->createCommand() ->batchInsert(yourModel::tableName(),['user_id','goods_id','goods_num','created_time'], $data) ->execute(); }
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- yii框架結(jié)合charjs實(shí)現(xiàn)統(tǒng)計(jì)30天數(shù)據(jù)的方法
- yii 框架實(shí)現(xiàn)按天,月,年,自定義時(shí)間段統(tǒng)計(jì)數(shù)據(jù)的方法分析
- Yii統(tǒng)計(jì)不同類(lèi)型郵箱數(shù)量的方法
- Yii中的relations數(shù)據(jù)關(guān)聯(lián)查詢(xún)及統(tǒng)計(jì)功能用法詳解
- 解析yii數(shù)據(jù)庫(kù)的增刪查改
- Yii2框架數(shù)據(jù)庫(kù)簡(jiǎn)單的增刪改查語(yǔ)法小結(jié)
- Yii2.0高級(jí)框架數(shù)據(jù)庫(kù)增刪改查的一些操作
- yii框架表單模型使用及以數(shù)組形式提交表單數(shù)據(jù)示例
- Yii實(shí)現(xiàn)MySQL多數(shù)據(jù)庫(kù)和讀寫(xiě)分離實(shí)例分析
- Yii+MYSQL鎖表防止并發(fā)情況下重復(fù)數(shù)據(jù)的方法
- Yii實(shí)現(xiàn)多數(shù)據(jù)庫(kù)主從讀寫(xiě)分離的方法
- yii框架結(jié)合charjs統(tǒng)計(jì)上一年與當(dāng)前年數(shù)據(jù)的方法示例
相關(guān)文章
php連接mssql數(shù)據(jù)庫(kù)的幾種方法
數(shù)據(jù)庫(kù)查詢(xún)不外乎4個(gè)步驟,1、建立連接。2、輸入查詢(xún)代碼。3、建立查詢(xún)并取出數(shù)據(jù)。4、關(guān)閉連接。 php連接mssql數(shù)據(jù)庫(kù)有幾個(gè)注意事項(xiàng),尤其mssql的多個(gè)版本、32位、64位都有區(qū)別。2013-02-02ThinkPHP使用UTFWry地址庫(kù)進(jìn)行IP定位實(shí)例
在WEB應(yīng)用中,根據(jù)IP地址定位和記錄相關(guān)訪問(wèn)日志也是非常常見(jiàn)的需求,在ThinkPHP中你可以輕松的實(shí)現(xiàn)IP地址獲取和定位2014-04-04實(shí)例介紹PHP刪除數(shù)組中的重復(fù)元素
在本文里小編給大家分享了關(guān)于PHP如何刪除數(shù)組中的重復(fù)元素的相關(guān)知識(shí)點(diǎn)和步驟,需要的朋友們學(xué)習(xí)下。2019-03-03PHP Laravel 使用Swagger生成API文檔(基本概念和環(huán)境搭建)
Swagger是一種簡(jiǎn)單、強(qiáng)大的RESTful API表現(xiàn)形式,這篇文章主要介紹了PHP Laravel 使用Swagger生成API文檔(基本概念和環(huán)境搭建),需要的朋友可以參考下2023-09-09php、mysql查詢(xún)當(dāng)天,查詢(xún)本周,查詢(xún)本月的數(shù)據(jù)實(shí)例(字段是時(shí)間戳)
下面小編就為大家?guī)?lái)一篇php、mysql查詢(xún)當(dāng)天,查詢(xún)本周,查詢(xún)本月的數(shù)據(jù)實(shí)例(字段是時(shí)間戳)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-02-02