列中的null值违反了非null约束PostgreSQL

列中的null值违反了非null约束PostgreSQL,postgresql,csv,Postgresql,Csv,我正在尝试将csv导入PostgreSQL数据库表。执行以下查询时: 我的桌子名是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

我正在尝试将csv导入PostgreSQL数据库表。执行以下查询时:

我的桌子名是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\u video
中,您的
v\u id
不为空,这导致了此问题。您可以选择使用非空约束:

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
);

v_id
中的每一行设置值,或使列nullable@JGHv_id column具有主键约束,当我添加v_id column nullable时,出现错误“将主键feild设置为null=False”,主键不能为null。这个价值应该如何创造?是的,同样的问题让我很困惑?告诉我解决方案。这取决于您的用例。您可以使用序列,也可以在csv中填充列。。。。或者您可以使用另一列进行PK,或者…错误:列“v_id”处于主键SQL状态:42P16i无法在v_id中填充记录,因为这是我们的项目标准。或者创建一个临时表作为工作空间,以便在复制到最终表之前加载和清理内容。我发现这两步过程比试图修复CSV或打破现有的表约束要容易得多。@ShahnawazIrfan我已经用另一种方法更新了我的答案。您可以重新创建表格,将一个单独的自动胶结id和v_id添加为普通列。亲爱的,我无法设置多个主键字段,但在执行“表格trendmania_视频的多个主键”后出现另一个错误。不允许使用。