QSQL导出mapfile和mapfile中PostGIS连接的一点心得

昨天弄QSQL导出mapfile,一直遇到下图的错误

QSQL导出mapfile和mapfile中PostGIS连接的一点心得_第1张图片

原因是QGIS在渲染图层时候使用了新的符号,在图层上右键-属性,如下图将符号修改就OK了

QSQL导出mapfile和mapfile中PostGIS连接的一点心得_第2张图片

 

然后我尝试使用QGIS连接本机PostGIS数据,结果老是报下面的错误:

QSQL导出mapfile和mapfile中PostGIS连接的一点心得_第3张图片

上网查了很多资料,还是没有搞定,暂时就阁下了嘛,不过PostGIS还是要连接的,于是只好修改代码来弄了。

代码只需要修改layer部分就可以了,其他的我用了一个比较笨的方法,我先把PostGIS里面需要连接的图层下下来,用QGIS加载导出mapfile(PostGIS连接不上,打开个本地shape还是可以的)。

下面是我的layer修改的代码:

 

LAYER

    NAME 'testHouse'

    TYPE POINT

    CONNECTION "user=postgres dbname=test host=localhost password=jiangfei port=5432"

#CONNECTION为连接PostGIS连接字符串,dbname为需要连接的数据集

    CONNECTIONTYPE postgis

    DATA "geom from house"

#DATA部分比较麻烦,格式为<columnname> from <tablename>,其中"columnname" 是含有geometry objects的Column的名字;"tablename"是使用的geometry data的table名字。

    METADATA

      'ows_title' 'house'

    END

    STATUS OFF

    TRANSPARENCY 100

    PROJECTION

    'proj=longlat'

    'datum=WGS84'

    'no_defs'

    END

 

 

 

我修改这段代码时候,在 DATA "geom from house"被卡住了,文档中解释是<columnname> from <tablename>,tablename我理解,就是图层名字嘛,那个columnname是何方神圣?文档中又说"columnname" 是含有geometry objects的Column的名字,于是我打开ArcMap,我想geometry嘛,那就是Shape字段嘛,结果运行网页上说Shape字段错误...百思不得其解啊,在我将要放弃的时候,我打开了PostGIS的客户端,如下图:

QSQL导出mapfile和mapfile中PostGIS连接的一点心得_第4张图片

阿门,我瞬间就明白了,NM,居然是这货...这货什么时候冒出这个字段的,修改下,OK,图显示出来了

 

自此,也算大功告成了(虽然很业余)...

至于QGIS连接PostGIS的错误,再继续研究下,毕竟用现在的方法,too simple...O(∩_∩)O~

你可能感兴趣的:(postgis)