1. ホーム
  2. postgresql

ヘッダ付きのcsvファイルからPostgreSQLで自動的にテーブルを作成することはできますか?

2023-11-12 19:26:45

質問

OS X 10.6.8 上で PostgreSQL 9.2.6 を動かしています。列ヘッダ付きのCSVファイルからデータベースにデータをインポートしたいと思います。私は、これを COPY ステートメントでこれを行うことができますが、私が最初に手動でCSVファイルの各列の列を持つテーブルを作成した場合にのみ可能です。CSVファイルのヘッダに基づいて、このテーブルを自動的に作成する方法はありますか?

Per この質問 私は試してみました

COPY test FROM '/path/to/test.csv' CSV HEADER;

ただ、こんなエラーが出ます。

ERROR: relation "test" does not exist

また、最初にカラムのないテーブルを作成した場合。

CREATE TABLE test ();

得ることができます。

ERROR: extra data after last expected column

PostgreSQL の COPY ドキュメント には、テーブルの自動作成に関する記述が見当たりません。ヘッダ付きのCSVファイルから自動的にテーブルを作成する他の方法はないのでしょうか?

どのように解決するのですか?

には何も表示されません。 COPY のドキュメントにあるように、COPY はできません。 はテーブルを作成してくれるからです。

を行う前に、それを行う必要があります。 COPY を追加する必要があります。