MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

【MySQL入門】.txtファイルからテーブルへデータをインポートする方法(LOAD DATA INFILEの使い方)

テキストファイル(.txt)に保存されたデータをMySQLのテーブルへ一括で取り込みたい場合、LOAD DATA INFILEステートメントを使用すると簡単に実現できます。この記事では、タブ区切りのテキストファイルからテーブルへデータをインポートする具体的な手順を解説します。

インポート元となるテキストファイルの準備

今回は、タブ区切りで保存された次のデータが記録された「A.txt」(パス:d:/A.txt)を例に説明します。

100 John USA 10000
101 Paul UK 12000
102 Henry NZ 11000
103 Rick USA 17000
104 Corey USA 15000

各カラムの値はタブ文字で区切られており、LOAD DATA INFILEはデフォルトでタブをフィールドの区切り文字として認識するため、特別なオプションを指定しなくてもそのまま読み込むことができます。

データの受け皿となるテーブルを作成する

まず、インポートしたデータを格納するためのテーブル「employee_tbl」を作成します。ファイル内のデータ構造(Id、Name、Country、Salary)に合わせてカラムを定義しましょう。

mysql> Create table employee_tbl(Id Int, Name varchar(20), Country Varchar(20), Salary Int);

Query OK, 0 rows affected (0.91 sec)

LOAD DATA LOCAL INFILEでデータをインポートする

テーブルの準備ができたら、以下のようにLOAD DATA LOCAL INFILEステートメントを実行して、ファイルからテーブルへデータを転送します。

mysql> LOAD DATA LOCAL INFILE 'd:\A.txt' INTO table employee_tbl;
Query OK, 5 rows affected (0.15 sec)
Records: 5 Deleted: 0 Skipped: 0 Warnings: 0

実行結果には、読み込まれたレコード数(Records)、削除された行数(Deleted)、スキップされた行数(Skipped)、警告の件数(Warnings)が表示されます。ここでは5行すべてが正常に読み込まれたことがわかります。

インポート結果を確認する

SELECT文でテーブルの中身を確認してみましょう。

mysql> Select * from employee_tbl;
+------+-------+---------+--------+
| Id   | Name  | Country | Salary |
+------+-------+---------+--------+
| 100  | John  | USA     |  10000 |
| 101  | Paul  | UK      |  12000 |
| 102  | Henry | NZ      |  11000 |
| 103  | Rick  | USA     |  17000 |
| 104  | Corey | USA     |  15000 |
+------+-------+---------+--------+
5 rows in set (0.00 sec)

上記の結果セットから、A.txtファイルのデータが正しくテーブルへ転送されたことが確認できます。

補足:LOCALキーワードとセキュリティ設定について

LOAD DATA LOCAL INFILEを使用する際は、サーバー側の設定によって実行が制限されている場合があります。エラーが発生する場合は、接続時にlocal_infile=1を有効化するか、サーバーのlocal_infileシステム変数をONに設定してください。また、CSV形式などカンマ区切りのファイルを読み込む場合は、FIELDS TERMINATED BY ','などのオプションを追加することで柔軟に対応できます。

  1. MySQLでテーブルにデータを挿入するストアドプロシージャの作成方法

    MySQLでは、ストアドプロシージャを利用することで、テーブルへのデータ挿入処理を再利用可能な形でまとめることができます。本記事では、実際にテーブルを作成し、データを挿入するためのストアドプロシージャを定義して呼び出すまでの一連の手順を解説します。 1. 挿入先となるテーブルを作成する まず、データを挿入するためのテーブルを用意します。以下の例では、Id・Name・Age の3つのカラムを持つテーブル「insertDataUsingStoredProcedure」を作成しています。 mysql> create table insertDataUsingStoredProcedure

  2. テキストファイルからExcelにデータをインポートする3つの方法

    必要なデータがテキストファイルに保存されている場合、そのデータをExcelブックに取り込んで、さまざまな操作や分析を行いたいことがあります。この記事では、テキストファイルからExcelへデータをインポートするための、シンプルかつ効果的な3つの方法をわかりやすく解説します。 説明には、次のようなテキストファイル内のデータをサンプルとして使用します。このデータには、ある会社の営業担当者(Salesman)、製品(Product)、売上(Sales)の情報が含まれています。これらの情報をExcelワークシートに取り込んでいきましょう。 テキストファイルからExcelにデータをインポートする3つの方