检查是否存在具有给定名称的 PostGIS 拓扑
Check if a PostGIS topology with a given name exists
如何测试具有给定名称的 PostGIS topology 是否存在?
我不想 运行 在创建拓扑时出错:
SELECT topology.CreateTopology('topology_name', 1);
您可以尝试使用条件表达式和topology.GetTopologyID
,例如:
SELECT COALESE(topology.GetTopologyID('topology_name'), topology.CreateTopology('topology_name', 1)) AS topo_id;
SELECT topology.CreateTopology('topology_name', 1)
WHERE NOT EXISTS (
SELECT * FROM topology.topology WHERE name = 'topology_name'
);
我假设您有一条带有 SRID=1
的自定义 spatial_ref_sys
记录,否则创建语句会因找不到 SRID
.
而失败
如何测试具有给定名称的 PostGIS topology 是否存在? 我不想 运行 在创建拓扑时出错:
SELECT topology.CreateTopology('topology_name', 1);
您可以尝试使用条件表达式和topology.GetTopologyID
,例如:
SELECT COALESE(topology.GetTopologyID('topology_name'), topology.CreateTopology('topology_name', 1)) AS topo_id;
SELECT topology.CreateTopology('topology_name', 1)
WHERE NOT EXISTS (
SELECT * FROM topology.topology WHERE name = 'topology_name'
);
我假设您有一条带有 SRID=1
的自定义 spatial_ref_sys
记录,否则创建语句会因找不到 SRID
.