前言
本想在soe中进行sde for sqlserver数据获取。由于soe的调试不方便,为了测试的简便,先在桌面上写了个arcengine连接sde for sqlserver的程序,但是本以为是很简单的工作,但是由于对sde知识的缺乏,还是耽误了些时间,现在把结果总结,mark一下!
环境
arcgis sde 10.1 for sqlserver,arcengine 10.1,vs2010
sde for sqlserver相关
安装和桌面的连接使用,参考esri 成都中一篇文章,http://blog.csdn.net/esrichinacd/article/details/8510224,非常好的一篇文章。作者写博客的态度非常的欣赏,让我们完全安装他的流程可以实现。努力使自己的博客也这样,在记录自己学习成果的同时,也可以对外分享帮助更多的人。
在整个的过程中,我犯了个对sde 不熟悉的错误,就是没有分清楚sde的直接连接和服务连接。
在10.1的版本,sde默认是直接连接,而直接连接需要在本机具有相对应的客户端。官方帮助给出的不同的数据库不同的客户端。
- IBM Data Server Run-time Client for DB2
- Informix Connect
- Microsoft SQL Server native client
- Netezza ODBC 驱动程序*
- Oracle Database Client
- PostgreSQL libpq 文件
在这个过程中,必须要注意的是,由于desktop和arcengine是32位的,而arcsde 64,则服务器端为x64,而客户端为32位机器。这个问题应该是目前sde方面经常出现的问题。
直接连接
直接连接需要安装客户端,一开始我的开发机器上没有客户端,在arccatalog中连接服务器上的数据库,但是怎么都连接不上,后来才知道是由于自己没有装客户端的原因。
图1
SDE for sqls