• 富山県の地元実績多数のホームページ制作会社・アウェイクコンピューター
  •  お電話:076-483-9951(受付:平日10時~16時)

PostgreSQLの話 テキストファイルを使ってデータを追加する方法

copy from コマンドを使う際、与えられるテキストデータファイルのデータが、あるべきフィールドの順番やフィールドの数が合わない場合があります。そうするとcopy from コマンドをそのまま使うことができません。
そういう時どうすればよいか、例示してみます。データファイルは、カンマ「,」で区切られているとします。まず次のようなファイルを作ります。

1行目——-> COPY sitename (stid,stname,stdiv) FROM STDIN DELIMITER AS ‘,’ ;
2行目から—> ここにデータファイルの内容を置きます。
        例えば 10001,サイト名前,1  といったデータです。
最終行——>\.

このファイル名をdata.txtとします。
cat data.txt | psql データベース名
これで、データが挿入されます。これだとフィールド指定もできるので柔軟に対応できます。

この方法は、バックアップに用いられているpg_dump内で用いられている手法を活用したものです。