1. ホーム
  2. postgresql

[解決済み] カラムのNULL値がNOT-NULL制約に違反する PostgreSQL

2022-02-07 01:03:37

質問

PostgreSQLのテーブルにcsvをインポートしようとしているのですが、以下のクエリを実行した場合、インポートされたcsvはどうなりますか?

私のテーブル名はtrendmania_videoです。

COPY public.trendmania_video FROM 'C:\Users\Shahnawaz Irfan\Desktop\0.csv' DELIMITER ',' CSV HEADER;

以下のエラーが発生しました。

ERROR:  null value in column "v_id" violates not-null constraint
DETAIL:  Failing row contains (null, null, UgzYr_WZlR73yFBnRdx4AaABAg, yar 
kindly ap urdu m b toturial bna lety wordpress k liye to hma..., null, null, 
null, null, null, null, null, null, null, null).
CONTEXT:  COPY trendmania_video, line 10: ",,UgzYr_WZlR73yFBnRdx4AaABAg,yar 
kindly ap urdu m b toturial bna lety wordpress k liye to hmari b he..."
SQL state: 23502

また、手動でインポートボタンで試してみましたが、同じエラーが発生します。

どうすればいいですか?

テーブルの中で trendmania_video の場合、あなたは v_id をnot nullにすると、この問題が発生します。1つのオプションは、not null制約を取り除くことです。

ALTER TABLE public.trendmania_video ALTER COLUMN v_id DROP NOT NULL;

もしこれが新しいテーブルなら、新しいテーブルを自動クリメントで再作成するのがよいでしょう。 id 一方 v_id は別の値です。

CREATE TABLE trendmania_video(
   id SERIAL PRIMARY KEY,
   v_id VARCHAR
   --the rest of the columns
);