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
\tArthur Dent
2\tマーヴィン
3\tZaphod 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
\tArthur Dent
2\tマーヴィン
3\tZaphod 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