postgres - 从sql文件加载(跳过错误),保留现有文件并创建不存在的文件

时间:2013-11-29 10:29:13

标签: django postgresql

我有一个sql文件(我们可以以任何我们想要的方式生成它)。

我想最初完全加载它,然后想要使用逻辑更新(删除,创建)db。

稍后,如果我想删除更多,我们可以简单地删除 但是,如果我们想要添加更多,那么我们需要再次导入sql。在导入之前,我不能丢弃这些表,因为它们已经是其他人的外键。所以,我只能这样做:
以某种方式运行sql文件只向数据库添加不可用的条目,跳过可用的条目,这样我就可以跳过错误(重复的键值违反了唯一的)。

1 个答案:

答案 0 :(得分:1)

将数据导入临时表,然后使用以下内容:

insert into real_table_name
select * from temporary_table_name
where id not in (select id from real_table_name);