首页 > 解决方案 > Postgres 从标准输入插入语句

问题描述

我有一个转储文件,它是:

COPY public.applications (id, reference_id, lead_id) FROM stdin;

接下来是需要添加的行。

我想从标准输入插入这些行而不是复制,因为复制正在替换我的整个表(删除表中的现有数据)。我只想添加行,而不是删除任何现有行。

我试过了:

insert into public.applications (id, reference_id, lead_id) values FROM stdin;

但这是不正确的语法。这样做的正确方法是什么?有没有办法调整复制命令只添加行而不替换表?

标签: sql-insertpostgresql-9.5

解决方案


正如目前在评论中指出的那样,copy不做替换。也就是说,COPY public.applications (id, reference_id, lead_id) FROM stdin; 将模拟与插入相同的行为。


推荐阅读