/ / CSV Importer dans MySQL avec PHP Ignorer les doublons - php, mysql, csv

Importation CSV dans MySQL avec PHP Ignorer les doublons - php, mysql, csv

J'ai un script PHP qui importe un csv dans une base de données MySQL. L'importation fonctionne bien avec cette ligne de code

$query = "insert into $databasetable values("$linemysql");";

Le seul problème, c’est lorsque j’essaie d’importer un autre fichier csv en dupliquant les erreurs de script. Comment puis-je ajuster ce script pour ignorer les doublons s'ils existent?

Réponses:

4 pour la réponse № 1

INSERT IGNORE n'insérera pas une ligne si cela entraînerait une duplication de clé. Cependant, il ignorera également (et ne générera pas d'erreur) d'autres cas, comme essayer d'insérer NULL dans une colonne avec NOT NULL contrainte.

Si vous voulez juste ignorer les doublons tout en obtenant d’autres erreurs d’insertion, utilisez INSERT ... ON DUPLICATE KEY UPDATE au lieu. Cela mettra à jour les lignes avec des clés de duplication, bien que cela entraîne un coût de performance.


2 pour la réponse № 2

Si vous utilisez mysql, essayez:

$query = "insert ignore into $databasetable values("$linemysql");";