MySQL
mysqlimport
サーチ…
パラメーター
パラメータ | 説明 |
---|---|
--delete -D | テキストファイルをインポートする前にテーブルを空にする |
--fields-optionally-enclosed-by | フィールドを引用符で囲む文字を定義する |
--fields-terminated-by | フィールドターミネータ |
--ignore -i | 重複キーの場合には、取り込まれた行を無視する |
--lines-terminated-by | 行ターミネータを定義する |
--password -p | パスワード |
--port -P | 港 |
--replace -r | 重複キーの場合は古いエントリ行を上書きする |
--user -u | ユーザー名 |
--where -w | 条件を指定する |
備考
mysqlimport
は、インポート先のテーブルを決定するために、拡張子を取り除いた後、インポートされたファイルの名前を使用します。
基本的な使用法
タブで区切られたファイルemployee.txt
1
\t
Arthur Dent
2\t
マーヴィン
3\t
Zaphod Beeblebrox
$ mysql --user=user --password=password mycompany -e 'CREATE TABLE employee(id INT, name VARCHAR(100), PRIMARY KEY (id))'
$ mysqlimport --user=user --password=password mycompany employee.txt
カスタムフィールド区切り文字を使用する
与えられたテキストファイルemployee.txt
1 |アーサー・デント
2 |マーヴィン
3 | Zaphod Beeblebrox
$ mysqlimport --fields-terminated-by='|' mycompany employee.txt
カスタムの行区切り文字を使用する
この例は、ウィンドウのようなエンディングに便利です:
$ mysqlimport --lines-terminated-by='\r\n' mycompany employee.txt
重複キーの処理
Employee
テーブル
id | 名 |
---|---|
3 | Yooden Vranx |
そして、 employee.txt
ファイル
1
\t
Arthur Dent
2\t
マーヴィン
3\t
Zaphod Beeblebrox
--ignore
オプションは重複したキーのエントリを無視します
$ mysqlimport --ignore mycompany employee.txt
id | 名 |
---|---|
1 | アーサー・デント |
2 | マーヴィン |
3 | Yooden Vranx |
--replace
オプションは古いエントリを上書きする
$ mysqlimport --replace mycompany employee.txt
id | 名 |
---|---|
1 | アーサー・デント |
2 | マーヴィン |
3 | ザフォッドビーブロンズ |
条件付きインポート
$ mysqlimport --where="id>2" mycompany employee.txt
標準csvをインポートする
$ mysqlimport
--fields-optionally-enclosed-by='"'
--fields-terminated-by=,
--lines-terminated-by="\r\n"
mycompany employee.csv
Modified text is an extract of the original Stack Overflow Documentation
ライセンスを受けた CC BY-SA 3.0
所属していない Stack Overflow