Pour commencer, il ne s'agit pas de charger des données depuis MySQL lui-même, mais d'utiliser l'outil de ligne de commande "mysqlimport".
Je l'utilise pour charger un CSV directement dans une table et j'ai besoin de voir les avertissements qu'il a générés. Je n'arrive pas à obtenir des avertissements à afficher avec verbose ni débogage activé. Des idées?
(MySQL 5.0.5)
tables.csv
s'agit d'un fichier local (c'est-à-dire pas sur le serveur de la base de données)?mysql -u root --execute="LOAD DATA LOCAL INFILE 'c:\\crp\\blah3.csv' INTO TABLE blah3 FIELDS TERMINATED BY ','; SHOW WARNINGS" whateverdbnameegcsv_db
lié stackoverflow.com/questions/14127529/...mysql> LOAD DATA LOCAL INFILE 'c:\\crp\\blah5.csv' INTO TABLE blah5 CHARACTER SET UTF8 FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'; SHOW WARNINGS;
comme mentionné stackoverflow.com/questions/4957900/…0
donc je suppose que vous devez analyser la sortie de la commande pour vérifier si l'importation a réussi lorsque ce qui précède est scripté (?)Comme les autres l'ont dit, le vrai problème est que pour que SHOW WARNINGS fonctionne, vous devez être dans la même session connectée. mysqlimport se déconnecte de la session dès que l'importation est terminée, ce qui rend impossible la capture de ses avertissements dans sa version actuelle. Cela ressemble à une opportunité de faire don d'un patch. :)
la source
Je n'ai trouvé aucun moyen d'imprimer des avertissements avec mysqlimport non plus. Mais comme mysqlimport ne fait que "LOAD DATA INFILE" pourquoi n'utilisez-vous pas la commande mysql pour importer les données suivies d'un "SHOW WARNINGS"?
la source