【发布时间】:2015-06-25 01:02:54
【问题描述】:
有时当我运行调用 shp2pgsql 将新表上传到数据库的 Python 脚本时,当我在 pgadmin 中查看此表时,它会显示为空白列名:
这个有列名 通常,当我再次运行脚本时,它会解决问题,并且 pgadmin 会显示一条有关数据库清理的消息。老实说,问题出在我的老板身上,因为他认为这是我的代码有问题的迹象,在他看到 pgadmin 中的名称之前我们无法继续前进(碰巧当我演示脚本时,那是 1/10没有列名就搞砸了)。
在 postgres 中甚至可以有一个没有列名的表吗?
这是真空消息
这是psql的\d的输出(假设XYZ是项目的名称和数据库的名称)
xyz => \d asmithe.intersect
Table "asmithe.intersect"
Column | Type | Modifiers
------------+------------------------------+------------------------------------
------------------------
gid | integer | not null default nextval('intersect
ion_gid_seq'::regclass)
fid_xyz_09 | integer |
juris_id | character varying(2) |
xyz_plot | numeric |
poly_id | character varying(20) |
layer | character varying(2) |
area | numeric |
perimeter | numeric |
lid_dist | integer |
comm | character varying(252) |
cdate | character varying(30) |
sdate | character varying(30) |
edate | character varying(30) |
afsdate | character varying(30) |
afedate | character varying(30) |
capdate | character varying(30) |
salvage | double precision |
pb_harv | double precision |
utotarea | numeric |
nbacvers | character varying(24) |
totarea | numeric |
areamoda | numeric |
areamodb | numeric |
areamodt | double precision |
areamodv | numeric |
area_intr | numeric |
dist_perct | numeric |
id | double precision |
floodid | double precision |
basr | double precision |
floodmaps | double precision |
floodmapm | double precision |
floodcaus | double precision |
burnclas | double precision |
geom | geometry(MultiPolygon,13862) |
Indexes:
"intersect_pkey" PRIMARY KEY, btree (gid)
退出并重新启动通常可以解决问题。
【问题讨论】:
-
脚本是什么?什么是“关于吸尘的信息”?退出并重新启动 PgAdmin 会改变什么吗?脚本是从该 PgAdmin 会话中运行的,还是从
psql运行的?
标签: python postgresql pgadmin arcmap