TatukGIS如何连接PostGIS SQL层

原创|其它|编辑:郝浩|2013-01-09 17:01:13.000|阅读 188 次

概述:TatukGIS支持读/写PostGIS SQL数据库矢量数据结构和空间索引,PostGIS层可以使用名为name_of_layer.ttkls的*.ttkls文件打开,也可以不使用*.ttkls文件进行连接。

TatukGIS Developer KernelGIS开发包(VCL、ActiveX和.NET Enterprise版本)、TatukGIS Internet Server GIS网络服务器TatukGIS Editor GIS编辑器均支持读/写PostGIS SQL数据库矢量数据结构和空间索引。

PostGIS层可以使用名为name_of_layer.ttkls的*.ttkls文件打开。TTKLS文件是TatukGIS的存根文件,他包含了连接到SQL矢量图层的连接设置。TTKLS文件的创建方式有两种:

  • 使用任何文本编辑器手动创建(如记事本);
  • 使用TatukGIS Editor中的SQL连接向导创建(请参考菜单:Layer/Add SQL Layer)。

也可以不使用*.ttkls文件进行连接,方法也有两种:

  • 将所有的*.ttkls文件参数作为一个CRLF或'\n'字符串(作为一个新行)嵌入到Path属性中;
  • 使用SQLParameters['KEY']=VALUE为SQLParameters属性分配*.ttkls文件参数。

PostGIS层的*.ttkls文件的结构如下:

  [TatukGIS Layer]
  Storage=PostGIS
  Layer=name|name;schema|name;schema;catalog (can be case sensitive)
  Features=table/view name; if provided will replace standard features table
  Dialect=POSTGRESQL
  ReadOnly=True|False
  ADO=ADO connection string if not exist then DBX connection will be used
  GeometryFieldCast=Text|Binary|EWKB - default is Text if parameter omitted
  GeometryRelationships=Server|Client - default is Client if parameter omitted
  LoginPrompt=1|0
  DriverName=see DBExpress help for TSQL Connection
  GetDriverFunc=see DBExpress help for TSQL Connection
  VendorLib=see DBExpress help for TSQL Connection
  LibraryName=see DBExpress help for TSQL Connection
  ...
  Parameters key=value
  ...

例如:

  [TatukGIS Layer]
  Storage=PostGIS
  Layer=Rivers
  Dialect=POSTGRESQL
  ADO="DSN=MyVectorLayer"

  [TatukGIS Layer]
  Storage=PostGIS
  Layer=Rivers
  Dialect=POSTGRESQL
  ADO=Provider=PostgreSQL.1;Password=123456;User ID=postgres; Data Source=localhost; Location=postgis; Extended Properties=""
  GeometryFieldCast=Text
  GeometryRelationships=Client

该层也可以通过SQLParameters属性打开。OnPassword事件在连接到数据库后将被激发,以解决<#user#>、<#password#>或任何其他 <#token#> 嵌入连接的选项。

评论:如何使用免费的PgOleDB驱动程序1.0.0.19

此时的驱动程序不支持bytea数据类型,所以设置初始化参数GeometryFieldCast=Text。使用INSERT INTO或UPDATE命令更新并导入的读写连接,因为没有实现的方法比如AddNew、 Field.Items.Value 属性。

评论:如何使用PostgreSQL Development Group提供的免费Post greSQL驱动8.00.00.04

GeometryFieldCast的任何值(EWKB、Text、Binary)都能进行只读或读写访问。但最后一个值(GeometryFieldCast=Binary)可以使更快地访问层。在案件EWKB中,每个BLOB均被转换成Extended Well-Known Binary形式,它将支持的标准扩展到了3DZ (Z - elevation)、3DM (M - measure)和4D坐标。EWKB模式中访问层比其他两个模式要慢一些。导入到PostGIS层是唯一的(GeometryFieldCast=Text)。

评论:通过DBX的连接

PostGIS层的读、读写访问是唯一可能的(GeometryFieldCast=Binary|EWKB)。如果你检查DE9-IM几何对象之间的并存,你应该考虑到设置GeometryRelationships。你可能会减少从服务器返回的行数,但如果你设置GeometryRelationships=Server访问层的速度会变慢。对于GeometryRelationships客户端,访问层要快一些。



标签:GIS

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果

文章转载自:慧都控件网

登录 慧都网发表评论


暂无评论...

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
相关厂商
相关产品
TatukGIS Developer Kernel

强大的GIS软件开发工具包,用于开发自定义地理信息系统(GIS)应用程序以及解决方案。

TatukGIS Internet Server (IS)

TatukGIS互联网服务器(Internet Server)是一个开发以及部署安全基于Web的地图解决方案的综合性ASP.NET地理信息系统(GIS)服务器。

TatukGIS Editor

此桌面地理信息系统(GIS)编辑器支持免费TatukGIS浏览器的所有特征功能,并且还具有大量可用来创建、编辑、分析地理信息系统地图文件或项目的特征功能。

购物车 在线客服 在线QQ 电话咨询
400-700-1020
反馈
在线客服系统
live chat