Rumah >rangka kerja php >YII >yii2怎么向数据库批量添加数据

yii2怎么向数据库批量添加数据

王林
王林ke hadapan
2020-12-08 15:44:243557semak imbas

yii2怎么向数据库批量添加数据

实现思路:

批量插入数据就是先将数据整合在一个数组里面,然后将这个数组直接插入到数据库中,从而实现一次性插入多条数据。

分两种情况

第一种情况:

全字段插入,就是这个数组中每条数据里面的键都和数据库里面字段名一致,且每个字段都有。

use yii\helpers\ArrayHelper; 
$rows = []; 
foreach ($models as $model) {
if ($model->validate()) { 
$rows[] = $model->attributes;
} 
} 
$rows = ArrayHelper::getColumn($models, 'attributes'); 
$postModel = new Post; 
Yii::$app->db->createCommand()->batchInsert(Post::tableName(), $postModel->attributes(), $rows)->execute();

第二种情况:

非全字段

$rows[] = [ 
'title' => $model->title, 
'content' => $model->content, 
]; 
Yii::$app->db->createCommand()->batchInsert(Post::tableName(), ['title', 'content'], $rows)->execute();

相关推荐:yii

Atas ialah kandungan terperinci yii2怎么向数据库批量添加数据. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:csdn.net. Jika ada pelanggaran, sila hubungi admin@php.cn Padam
Artikel sebelumnya:yii2框架怎么设置缓存Artikel seterusnya:yii怎么手动生成错误日志