Maison >cadre php >YII >Comment ajouter des données à la base de données par lots dans yii2

Comment ajouter des données à la base de données par lots dans yii2

王林
王林avant
2020-12-08 15:44:243611parcourir

Comment ajouter des données à la base de données par lots dans yii2

Idée de mise en œuvre :

Insérer des données par lots consiste d'abord à intégrer les données dans un tableau, puis à insérer le tableau directement dans la base de données, obtenant ainsi un Insérer plusieurs éléments de données.

Il y a deux cas

Le premier cas :

Insertion complète du champ, c'est-à-dire que la clé de chaque élément de données de ce tableau est cohérente avec le nom du champ dans la base de données, et chaque champ l'a.

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();

Deuxième cas :

Champ non complet

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

Recommandations associées : yii

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer