SQL
SQL
Java2 SE 5.0 API
Java2 SE 1.4 API
Java2 EE API
Struts 1.0.2
MSDN2 Library
MySQL 5.1
MySQL 4.1
HTMLリファレンス
CSSリファレンス
JavaScript
基本カラーチャート
カレンダー
 最新PG・講座情報
 最新ニュース
 電子辞書・辞典
ご意見・ご要望はこちらまで

連載

SQL

MySQLでのテキストデータの挿入


1.状況

 SQLではデータを挿入する場合、1件毎にINSERT文を使って行うことになります。 数件のデータならばいいですが、2,30件以上となると対話型の入力でないと我慢できなくなるものです。 初回のデータ入力時はExcelなどのシートからコピーしたい場合もあります。

 MySQL自身には対話型の入力機能は付いてないので、他のデータベースやExcelなどからデータを移行するには、一度テキストデータにコピーしてMySQLに挿入するのが一番簡単な方法です。
 MySQLにはこの外部のテキストファイルからのデータ挿入を1つのSQL文として実行することができます。


2.テキストデータの挿入SQL

 それでは簡単な手順を示します。テキストデータは1行を1レコードとし、各項目間は何らかの文字で区切られたものとします。 この区切りの文字は自由に変更できますが、通常は","とします。このようなファイルをCSV(Comma Separated Values)ファイルとも言います。

 挿入するデータをCSVファイルとして準備しておきますが、Excelなどでは「名前を付けて保存」する時に、ファイルの種類を「CSV(カンマ区切り)」にして保存します。
 ここでは対象のデータベースを account、テーブル名を user、挿入データのテキストファイル名を account.txt とし、MySQLのデータベースと同じディレクトリにあるとします。

 
 1: C:\>cd mysql\bin
 2: C:\mysql\bin>
 3:
 4: C:\mysql\bin>mysql -u USERID -p
 5: Enter password: ********
 6: Welcome to the MySQL monitor.  Commands end with ; or \g.
 7: Your MySQL connection id is 2 to server version: 4.0.17-nt
 8:
 9: Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
10:
11: mysql> use account
12: Database changed
13: mysql> load data infile 'account.txt' into table user
14:     ->  fields   terminated by ','
15:     ->  optionally enclosed by '"'
16:     ->  lines    terminated by '\r\n';
17: Query OK, 0 rows affected (0.03 sec)
 コマンドプロンプト(テキストデータの挿入)      注) 連番は説明用で実際にはありません
 1行目   :MySQLの実行ファイルのある場所に移動する。
 4行目   :ユーザIDを指定し、MySQLを起動する。
 11行目   :データベース(account)を選択する。
 13-16行目:テキストデータをユーザテーブル(user)に挿入する。
 14行目   :区切り文字に","を指定する。
 15行目   :文字列を""で囲っている場合は囲う文字として'"'を指定する。ない場合は必要なし。
 16行目   :改行文字(CRLF)を"\r\n"を指定する。

Top
Copyright© 2003-2007 FumikiChan All Rights Reserved.
http://www.fumikichan.net/