私は、いくつかのC ++関数を介して、さまざまな形式のさまざまな種類のデータを含む多数の.csvファイルを解析する必要があるプロジェクトに取り組んでいます。その後、ファイルからデータを抽出し、psqlにインポートできる.sqlファイルを作成して、後の段階でデータをPostgreSQLデータベースに挿入します。
しかし、.sqlファイルの正しい構文を理解することはできません。これが私が得ているのと同じエラーを再現するサンプルテーブルとサンプル.sqlファイルです:
テーブル作成コード:
CREATE TABLE "Sample_Table"
(
"Col_ID" integer NOT NULL,
"Col_Message" character varying(50),
CONSTRAINT "Sample_Table_pkey" PRIMARY KEY ("Col_ID" )
)
insert.sql(コピー行の後、単一のタブ文字で区切られたフィールド)
copy Sample_Table (Col_ID, Col_Message) from stdin;
1 This is Spaaarta
2 Why So Serious
3 Baazinga
\.
上記のSQLファイルを実行すると、次のエラーが発生します。
ERROR: syntax error at or near "1"
LINE 2: 1 This is Spaaarta
^
********** Error **********
それが役立つ場合は、PostgreSQL 9.1リリースを実行しており、上記のクエリはすべてPGAdminIIIソフトウェアを介して実行されました。