Zunächst geht es nicht um das Laden von Daten aus MySQL selbst, sondern um die Verwendung des Befehlszeilentools "mysqlimport".
Ich verwende es, um eine CSV-Datei direkt in eine Tabelle zu laden und die von ihr erzeugten Warnungen anzuzeigen. Ich kann anscheinend keine Warnungen erhalten, die bei aktivierter Ausführlichkeit oder aktivierter Fehlerbehebung angezeigt werden. Irgendwelche Ideen?
(MySQL 5.0.5)
tables.csv
es sich um eine lokale Datei handelt (dh nicht auf dem Server der Datenbank)?mysql -u root --execute="LOAD DATA LOCAL INFILE 'c:\\crp\\blah3.csv' INTO TABLE blah3 FIELDS TERMINATED BY ','; SHOW WARNINGS" whateverdbnameegcsv_db
verwandte 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;
wie erwähnt stackoverflow.com/questions/4957900/…0
so ist, dass Sie die Befehlsausgabe analysieren müssen, um zu prüfen, ob der Import erfolgreich war, wenn das obige Skript ausgeführt wird (?)Wie die anderen sagten, besteht das eigentliche Problem darin, dass Sie sich in derselben verbundenen Sitzung befinden müssen, damit SHOW WARNINGS funktionieren kann. Sobald der Import abgeschlossen ist, trennt sich mysqlimport von der Sitzung, sodass die Erfassung der Warnungen in der aktuellen Version nicht mehr möglich ist. Klingt nach einer Gelegenheit, einen Patch zu spenden. :)
quelle
Ich habe auch keine Möglichkeit gefunden, Warnungen mit mysqlimport auszudrucken. Aber da mysqlimport nur "LOAD DATA INFILE" ausführt, verwenden Sie den Befehl mysql, um die Daten zu importieren, gefolgt von einem "SHOW WARNINGS".
quelle