[解決済み】PG COPY エラー: 整数の入力構文が無効です
2022-02-23 16:12:07
質問
実行中
COPY
が表示されます。
ERROR: invalid input syntax for integer: ""
というエラーメッセージが表示されます。何が足りないのでしょうか?
私の
/tmp/people.csv
ファイルを作成します。
"age","first_name","last_name"
"23","Ivan","Poupkine"
"","Eugene","Pirogov"
私の
/tmp/csv_test.sql
ファイルを作成します。
CREATE TABLE people (
age integer,
first_name varchar(20),
last_name varchar(20)
);
COPY people
FROM '/tmp/people.csv'
WITH (
FORMAT CSV,
HEADER true,
NULL ''
);
DROP TABLE people;
出力します。
$ psql postgres -f /tmp/sql_test.sql
CREATE TABLE
psql:sql_test.sql:13: ERROR: invalid input syntax for integer: ""
CONTEXT: COPY people, line 3, column age: ""
DROP TABLE
トリビアです。
- PostgreSQL 9.2.4
解決方法は?
<ブロッククオートERROR: 整数に対する無効な入力構文: ""。
""
は有効な整数ではありません。PostgreSQLは
引用されない
の空白フィールドは、CSVではデフォルトでNULLとして扱われますが
""
と書くようなものでしょう。
SELECT ''::integer;
となり、同じ理由で失敗します。
もし、NULL整数を引用符で囲んだ空文字列のようなCSVを扱いたい場合、それを少し整理することができるプリプロセッサを介してPostgreSQLに渡す必要があります。PostgreSQLのCSV入力は、CSVの奇妙で素晴らしい乱用の可能性を全て理解できるわけではありません。
オプションは以下の通りです。
- 表計算ソフトで読み込んで、まともなCSVを書き出す。
-
Pythonを使用する
csv
モジュール、PerlText::CSV
などで前処理をする。 - Perl/Python/whateverを使用してCSVをロードし、DBに直接挿入します。
- CloverETL、Talend Studio、Pentaho KettleなどのETLツールの使用
関連
-
[解決済み] PostgreSQLの命名規則
-
[解決済み] pg_restore の実行時に "[archiver] unsupported version (1.13) in file header" が表示される。
-
[解決済み] psql: FATAL: データベース "<user>" が存在しない
-
[解決済み] 特定のテーブルを除いてpostgres dbをダンプする方法は?
-
[解決済み] postgresql - 整数が範囲外です。
-
[解決済み] PostgreSQL ERROR: INSERT は式よりも多くのターゲット・カラムを持ちますが、そうではありません。
-
[解決済み] 私のシステムでpostgresを実行することができません。postgres is not in the sudoers file.と表示されます。この件は報告されます` [closed].
-
[解決済み] PostgreSQLのインストール中にデータベースクラスタへのSQLモジュールのロードに失敗しました。
-
[解決済み] pgadmin4 : postgresql アプリケーションサーバーに接続できませんでした。
-
複雑なクエリのPG実行でERROR: unknownからtextへの変換関数が見つからなかった
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】PostgreSQL。クエリに結果データの保存先がない
-
[解決済み] PostgreSQLを使用するRailsでエラー 'fe_sendauth: no password supplied' を解決するにはどうすればよいですか?
-
[解決済み] Postgresql : "-" 付近でシンタックスエラーが発生する。
-
[解決済み] SequelizeConnectionRefusedError: ECONNREFUSED 127.0.0.1:5432 を接続し、docker を使用して sequelize を使用する場合。
-
[解決済み] ERROR: 読み取り専用トランザクションで CREATE TABLE を実行できません。
-
[解決済み] PostgreSQL ERROR: INSERT は式よりも多くのターゲット・カラムを持ちますが、そうではありません。
-
[解決済み] それぞれが外部キーである要素の PostgreSQL 配列
-
[解決済み] アプリでSSLを有効にしていない場合、AzureのPostgresサーバーへの接続に失敗するのはなぜですか?
-
PostgreSQLデータベースエラーコードの説明
-
複雑なクエリのPG実行でERROR: unknownからtextへの変換関数が見つからなかった