PostgreSQLでCSVファイル等を読み込み・書き出しする方法です.

目次

  1. インポート
    1. タブ区切りテキスト
    2. CSV
    3. 見出しのあるCSV
    4. 特殊な記号で区切られたデータ
  2. エクスポート

インポート

タブ区切りテキスト

インポートしたいデータベースであるとき,タブ区切りテキストを読み込むには

\COPY テーブル名 (カラム名1, カラム名2, ...) FROM 'ファイルパス'

とします.
カラム名を省略するとテーブルごとコピーします.

CSV

CSVを読み込むには,CSV形式であることをオプションに記します.

\COPY テーブル名 (カラム名1, カラム名2, ...) FROM 'ファイルパス' CSV;

見出しのあるCSV

見出しがあるCSVでは,CSVであるときに利用できるオプションのHEADERを加えます.

\COPY テーブル名 (カラム名1, カラム名2, ...) FROM 'ファイルパス' CSV HEADER

特殊な記号で区切られたデータ

デリミタを指定します.
例えば@マークで区切られているなら,

\COPY テーブル名 (カラム名1, カラム名2, ...) FROM 'ファイルパス' DELIMITER '@';

とします.

なお,タブ区切りテキストを

\COPY テーブル名 (カラム名1, カラム名2, ...) FROM 'ファイルパス' DELIMITER E'\t';

とすることができます.

エクスポート

FROMTOにします.