12

1 つの DB から特定のテーブルのデータのダンプが必要です。コマンド mysqldump -t -uroot -p TEST Person Address Department > /home/Dumps/Desktop/dumb.sql を使用しています。私の問題は、このダンプをインポートしようとしている DB に同じテーブルがありますが、列の数が異なることです。 . たとえば、新しい DB の Person テーブルには、Test Db の Person テーブルと比較して、もう 1 つの列が含まれています。このため、ダンプをインポートできませんでした。「列数が行1の値数と一致しません」というエラーが表示され、何が問題なのかがわかりました。dump.sql では、挿入クエリは次のようになります

INSERT INTO `Person` VALUES 
    (1,'1',NULL,'2012-05-22 08:05:34',NULL,'shobana',NULL),
    (2,'2',NULL,'2012-07-16 09:56:33',NULL,'prabu',NULL);

しかし、次のような場合:

INSERT INTO `Person` 
   (column1,column2,column3,column4,column5,column6,column7) 
   VALUES 
   (1,'1',NULL,'2012-05-22 08:05:34',NULL,'shobana',NULL),
   (2,'2',NULL,'2012-07-16 09:56:33',NULL,'prabu',NULL);

私は何の問題もありません。

列名のマッピングを使用してデータ ダンプを取得するコマンドはありますか。

誰でも私を助けてもらえますか?前もって感謝します..

4

1 に答える 1

24

使用する:

mysqldump --complete-insert ....

これにより、列名が追加され、インポートできるようになります。

于 2012-10-11T15:28:23.180 に答える