in XML exportiert Zum Exportieren von Daten aus einer bestimmten MySQL-Tabelle in XML Ich verwende den folgenden Befehl ein:mysql: Tabelle ohne konkrete Spalte
mysqldump --xml -t -u [username] --password=[password] [database] [table] > /path/to/file.xml
und es funktioniert gut.
Mein Problem ist, dass es alle Spalten aus der Tabelle exportiert und ich will das nicht. Ich benötige die XML-Ausgabe für Komponententests, so dass eine Spalte "created_at" in der Ausgabe alle meine Tests fehlschlagen lassen würde.
Also meine Frage ist: vorausgesetzt, ich habe eine mysql Tabelle namens "Tabelle", mit Spalten "col_1, erstellt, col_2", wie kann ich "erstellt" als Spalte, die nicht in der Ausgabe XML-Datei erhalten angezeigt werden über mysqldump
Befehl?
UPDATE: Ich kann meine Frage jetzt nicht beantworten, ich werde es später tun. Ich brauchte es für PHPUnit, aber anstatt die mysqldump-Ausgabe zu filtern, kann ich DataSet direkt in PHPUnit filtern.
$filterDataSet = new PHPUnit_Extensions_Database_DataSet_DataSetFilter($notFilteredDataSet);
$filterDataSet->setExcludeColumnsForTable('Table', array('created_at'));
werde tun, was ich brauche.
das ist in der Tat schön! Was ich aber brauche, ist die Kontrolle der Spalten – mkk
Ich missverstanden - danke für die Klärung. Ich würde die Spalte nach dem Import der Dump-Datei fallen lassen: alter table drop column created_at. Dann führe deine Tests durch. –