J'ai des milliers de données analysées à partir d'énormes XML à insérer dans la table de base de données en utilisant PHP et MySQL. Mon problème est que cela prend trop de temps pour insérer toutes les données dans la table. Existe-t-il un moyen de scinder mes données en groupes plus petits afin que le processus d'insertion se fasse par groupe? Comment configurer un script qui traitera les données par 100 par exemple? Voici mon code:Insertion par lots de données dans la base de données MySQL en utilisant php
foreach($itemList as $key => $item){
$download_records = new DownloadRecords();
//check first if the content exists
if(!$download_records->selectRecordsFromCondition("WHERE Guid=".$guid."")){
/* do an insert here */
} else {
/*do an update */
}
}
* Note: $ itemList est d'environ 62000 et continue de croître.
Oui, j'utilise une boucle for pour insérer les données dans la base de données distante. Le problème est que j'utilise une base de données distante pour que mon script s'exécute sur un serveur séparé pour alimenter l'autre base de données. – text
Utilisez la plus petite quantité de phrases que vous pouvez gérer, c'est-à-dire, utilisez de grandes instructions d'insertion. –
Oui, je peux utiliser un fichier et c'est ce que je prévois .. J'ai un souci sur cet insert, comment puis-je répéter un insert dans la table (col) VALUES (val) à répéter après 100 lignes sont atteintes? – text