webleads-tracker

mysql_info après ON DUPLICATE KEY UPDATE [RESOLU]

Vincent StartUp
Avatar
Bonsoir,

Pour importer un fichier csv (40000 lignes), je me sers d'une requete mysql
INSERT INTO matable ...ON DUPLICATE KEY UPDATE id = VALUES(id)


ON DUPLICATE KEY UPDATE marche très bien, par-contre je voudrais récupérer le nombre d'enregistrements ajoutés et mis à jour.
via em_db::exec, je n'ai aucune info là dessus. Si je fais un mysql_info() après, il ne me renvoie rien.

Comment faire ?

Bon weekend,
Vincent - StartUp Communication

Thomas [LE KLUB]
Avatar
Salut vincent,

Je sais pas trop comment faire "proprement" avec MySQL, il faudrait chercher un peu sur la doc. Par contre tu peux "tricher" tu fait un COUNT de tes enregistrements présents en BDD au départ, tu compte le nombre d'enregistrements à insérer/mettre à jour. Tu fais ta requête. ensuite tu recompte le nombre d'enregistrements en BDD. La différence entre le deuxième compte et le premier te donnera le nombre d'INSERT et la différence de ton nombre d'enregistrements dans la requête et le nombre d'INSERT te donnera le nombre d'UPDATE faits.

En espérant être clair,
Thomas

Vincent StartUp
Avatar
Salut Thomas,

En effet je peux faire comme ça, et c'est simple à faire, merci pour l'idée :)

Si jamais coté labo vous savez comme récupérer les infos mysql_info d'une requete
INSERT INTO matable ...ON DUPLICATE KEY UPDATE id = VALUES(id)
, je suis preneur.

Bonne semaine,

Vincent
Vincent - StartUp Communication