web-dev-qa-db-ja.com

MySQL WorkbenchへのCSVファイルの読み込み

MySQL Workbenchのdbにロードする必要があるExcel/CSVファイルがたくさんあります(Mac OS Xを使用しています)。私は適切なウォークスルーまたはチュートリアルを探しましたが、CSVをMySQL Workbenchにロードする方法を明確に説明するものは何も見ていません。

19
janglosaxon

mySQLテーブルにcsvファイルをロードしようとしていますか?これは、LOAD DATA LOCAL INFILEコマンドを使用して簡単に実行できます。

例:

LOAD DATA LOCAL INFILE '/data.csv' INTO TABLE my_table FIELDS TERMINATED BY ','

MySQLへの任意のインターフェースからそのコマンドを入力できるはずです。ワークベンチにはSQLクエリを実行する方法があると思います。

12
Ben English

参考までに、私はWindowsでこれを実行したいと思い、タスクを達成するために HeidiSQL を使用しました。それは非常に簡単でした、私はツール-> CSVファイルのインポートを使用し、最初の試みでうまくいきました。

3
bananafish

それはワークベンチでなければなりませんか?

他のMySQLビンを使用できますか?

次に例を示します。データベースを作成します。

テーブルを作成

load data local infile '/path/whatever.csv' into table dbName.tableName fields terminated by ',' enclosed by '"' lines terminated by '\n';

3
djdy

または、Excelを使用して、ロードするファイルのリストを使用して多数のLOAD DATA INFILEステートメントを生成することもできます。

たとえば、次のことができます。

  1. excelのA列にファイルの名前を配置する
  2. このような数式をB1セルに配置します。

    = "LOAD DATA LOCAL INFILE 'path /"&A1& "' INTO TABLE tablename FIELDS TERMINATED BY '、' LINES TERMINATED BY '\ r\n';"

  3. b1セルをコピーして、必要に応じてB列セルに貼り付けます。

したがって、ExcelのB列にLOAD DATAステートメンスがあり、それらをmysqlコマンドラインにコピーして貼り付けることができます。

たぶん、スクリプトのパワーユーザーにとってはあまり便利ではありませんが、MS Excelの強力なユーザーにとっては理にかなっています。

1
Pavel

Numbers iWork 9)でExcelファイルを開き、CSVにエクスポートします。 'CSV with LOAD DATA'オプションを使用してMySQLにインポートすると正常に機能します。

0
heimi

これは私にとって入り組んでいましたが、これが私がしたことです:

PHPmyAdminをインストールしたので、,を区切り、エスケープ文字として"を使用してCSVにエクスポートしました。 PHPmyAdminは"をエスケープとして処理できなかったため、""のすべてのインスタンスを\"で検索/置換し、機能しました。スエルテ!

0