当我在另一个Postgres图层中输入新元素(功能)时,可以通过两种方式进行操作:
- 绘制新元素(带有“添加功能”),我很少这样做或
- 复制(或剪切)另一个Postgre层(Source层)中的某些元素,并将其粘贴到我经常执行的目标层中
在第一个示例中,保存编辑工作正常,因为此层从postgre数据库序列获取gid * nextval('layer_name_gid_seq':: regclass)*
在第二个示例中,在保存编辑时出现错误,因为在将元素从源层复制到目标层时,qgis 从源层复制 了元素的gid。尝试保存编辑内容时,将返回以下错误:
无法提交对“ Cjevovodi”层的更改。
错误:错误:未添加1个功能。
提供程序错误:
添加功能时出现PostGIS错误:错误:重复的键值违反了唯一约束“ cjevovodi_okill_pkey”
详细信息:键(gid)=(5)已存在。
我试图在字段gid中复制* nextval('layer_name_gid_seq':: regclass)*,但是由于字段被定义为数字,因此无法将该序列粘贴到字段gid中。
有谁知道从源层复制元素的简单方法(使用现有的gid)分配新的gid?
谢谢!