特定の mysql テーブルから xml にデータをエクスポートするには、次のコマンドを使用します。
mysqldump --xml -t -u [username] --password=[password] [database] [table] > /path/to/file.xml
そしてそれはうまく動作します。
私の問題は、テーブルからすべての列をエクスポートすることであり、これは望ましくありません。単体テストには xml 出力が必要なので、出力に「created_at」という列があると、すべてのテストが失敗します。
mysqldump
したがって、私の質問は次のとおりです。「テーブル」という名前の mysql テーブルがあり、列が「col_1、created、col_2」であると仮定すると、コマンドを介して取得した出力 xml ファイルに表示されない列として「created」をマークするにはどうすればよいですか?
更新: 今は質問に答えることができません。後で答えます。PHPUnit に必要でしたが、実際には mysqldump 出力をフィルタリングする代わりに、PHPUnit で DataSet を直接フィルタリングできます。
$filterDataSet = new PHPUnit_Extensions_Database_DataSet_DataSetFilter($notFilteredDataSet);
$filterDataSet->setExcludeColumnsForTable('Table', array('created_at'));
私が必要とすることをします。