SQL

mysqlの出力データをエクスポート、ファイルデータをテーブルにインポート

前回(https://shiro-secret-base.com/?p=945)に続き、mysqlで痒いところをまとめるシリーズ

mysqlでSELECTした結果をファイルに出したり、逆にファイルのデータをテーブルにインポートしたりする方法をまとめる。

SELECTした結果をエクスポート

INTO OUTFILEを使う

形式

${...}は引数

引数

  • ${colN}(N=1,2,3...) - カラム名(*にすればもちろん全てのカラムになる)
  • ${table} - テーブル名
  • ${file_path} - 出力したいファイルパス、絶対パスにすること
  • ${separator} - フィールドの区切り文字(CSVで格納したい場合は','カンマにすればよい)

実行例

SELECTした結果をcsvファイルに格納して確認するまで

 

ファイルのデータをテーブルにインポートする

持ち前のCSVデータを一気にテーブルに挿入したい場合は

LOADDATA INFILEを使う

形式

引数の意味はエクスポートと同じなので割愛

実行例

usersテーブルにusers_sample.csvをインポートし、SELECTで出力するまで

まとめ

  • テーブルのエクスポートはINTO OUTFILEを使う
  • テーブルへのインポートはLOADDATE INFILEを使う

参考記事

 

基礎からのMySQL 第3版 (基礎からシリーズ)
2012年の改訂版から5年半ぶりの改訂データベースに触れるのが本当に初めてという方に向けて、「データベースとは何か」という基本中の基本から、MySQLを使ったデータベースの作成と操作、PHPとの連携によるWebアプリケーション作成の入り口までを、豊富な図とサンプルにより解説します。5年間で周辺環境が変わりましたので、そちらを一新しての刊行です。

-SQL

© 2021 Shiro's secret base