テーブルのImport方法についてまとめます。
Importする方法には、下記の2つの方法があり。
1.mysqlimportコマンドを使う
2.load data table文を使う
上記の2つについて、それぞれの長所、短所をまとめます。
1.mysqlimportコマンド
(長所)
①.入力レコード数、削除レコード数、スキップしたレコード数、ワーニングのあったレコード数を、リダイレクト出力させることができる。
→上記の「テーブル名: Records: xx Deleted: xx Skipped: xx Warnings: xx」
ような形で、「a.txt」っていうファイルにリダイレクトさせることができる。
②.「--delete」のオプションを付けることで、一度deleteした後に、レコードのロードを行うことができる。
(短所)
①.発生したワーニングの詳細を出力させることができない。
→上記のような形で、何行目のどのカラムのデータが不正などの情報を出力させることができない。
2.load data table
(長所)
①.発生したワーニングの詳細を出力させることができる。
→上記のような形で、mysqlのターミナルにログインする際に、「--show-warnings」のオプションを付けることによって、ワーニングの詳細情報を出力させることが出来る。
(短所)
①.入力レコード数、削除レコード数、スキップしたレコード数、ワーニングのあったレコード数を、リダイレクト出力させることができない。
→シェルのヒアドキュメントなどで「LOAD DATA INFILE~」情報をmysqlコマンドに渡すことはできるが、その際、上記の情報はリダイレクトされない。ワーニングの詳細情報はリダイレクトされたが。。