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

MySQLのLOAD DATAステートメントとは?ファイルからデータを一括インポートする方法を解説

LOAD DATAステートメントとは

MySQLのLOAD DATAステートメントは、テキストファイルなどのデータファイルからデータベースへデータを一括でインポートするために使用されます。ファイル内のレコードを直接読み込み、テーブルへ挿入することができるため、大量のデータを登録する際に非常に便利です。

基本構文

LOAD DATAステートメントの基本構文は以下のとおりです。

LOAD DATA LOCAL INFILE '[パス/][ファイル名]' INTO TABLE [テーブル名];

各要素の意味は次のようになっています。

  • パス:読み込むファイルが保存されている場所(アドレス)
  • ファイル名:データが記録された.txtファイルなどの名前
  • テーブル名:データをロードする対象のテーブル

実行例:テキストファイルからテーブルへデータをインポート

ここでは、タブ区切りのデータが記録された「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

このファイルのデータを、以下の「employee_tbl」テーブルにロードします。

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

Query OK, 0 rows affected (0.91 sec)

テーブルの作成が完了したら、次のステートメントを実行して、ファイルからテーブルへデータを転送します。

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

データの確認

実際にデータが正しく登録されたか、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ファイルのデータがemployee_tblテーブルへ正しく転送されたことが確認できます。

まとめ

LOAD DATAステートメントを使えば、手作業でINSERT文を何度も実行することなく、ファイルにまとめられたデータを一度にテーブルへ取り込むことができます。実行結果には処理されたレコード数やスキップされた行数が表示されるため、インポートが正常に行われたかどうかも簡単に確認できます。大量データの初期投入やCSVファイルからの移行など、さまざまな場面で活用できる便利なステートメントです。

  1. データセンターとは?仕組み・用途・セキュリティ対策をわかりやすく解説

    データセンターとはデータセンターとは、大量のコンピュータサーバーや関連機器を収容するために設けられた専用施設のことです。英語では「data center」と表記するのが一般的ですが、「datacenter」と一語で書かれることもあります。イメージとしては、「壁からはみ出してしまったコンピュータ室」のようなものです。データセンターには、企業ユーザーのメール、財務記録、ウェブサイトのデータなど、あらゆる種類のデータを保存することができます。データセンターは何に使われるのか?一部のオンラインサービスは規模が非常に大きく、1〜2台のサーバーでは運用できません。そうしたサービスでは、サービスを動かすため

  2. MySQLとは?主な特徴や仕組みをわかりやすく解説

    MySQLは「マイ・シークエル」と読まれることもある、オープンソースのSQL(Structured Query Language/構造化照会言語)データベース管理システムです。SQLはデータベースへアクセスし、操作するために用いられる言語であり、ANSI/ISO SQL標準に基づいて定義されています。SQL標準は1986年以来、進化と発展を続けており、現在では複数のバージョンが存在します。MySQLは現在、Oracle Corporation(オラクル社)によって開発・メンテナンスされており、公式サイトは https://www.mysql.com/ です。MySQLの主な特徴ここでは、MyS