在线编辑(一)数据准备

长平狐 发布于 2012/11/28 15:39
阅读 882
收藏 0

    本博文的所用到的软件环境如下,win7 64位 ,ArcGIS 10.1 ,数据库 postgresql-9.0.6-1-windows-x64。

下载以上的Postgres数据库,并安装,安装过程要设置一个数据库服务器的密码,其他的地方不做特殊要求,默认设置安装就行。关于详细的安装过程请参阅http://blog.csdn.net/arcgis_cs/article/details/7750893

  之前经常有朋友问到如果实现要素的编辑并且保存到服务中,最简单的一种方式就是发布要素服务,

要素服务添加到地图文档的图层和表格通过服务提供。以下将介绍要素服务数据的要求:

  • 所有数据必须来自单个 ArcSDE 地理数据库。
  • 所有数据必须通过地理数据库注册。
  • 如果要允许编辑数据,将需要 ArcSDE 数据的写入权限。使用 OS 身份验证时,必须向 ArcGIS Server 帐户授予这些权限。
  • 支持版本化和未版本化数据;但是,如果需要使用服务编辑非简单类型(例如,网络边),则需要进行版本化。

发布要素服务有个前提就是要把服务中的数据存储在企业级的GeoDatabase中,即通过SDE来存储,关于SDE的作用,可以简单的理解为SDE 就是个中间件,他是把空间数据(比如点线面)转化为关系型数据库的表表存储在数据库里,最终的数据还是存储在关系数据库里的 比如SQlServer ,Oracle,PostgesSQL,SDE起到的就是客户端与数据库服务器之间一个桥梁的作用,这些客户端可以是ArcGIS 桌面,也可以是Server。因为他们都需要与数据库打交道的,都是处理数据库中的数据。关于SDE更多信息参阅SDE博客,http://blog.csdn.net/linghe301 

   首先创建一个SDE数据库:

选择数据库平台postgressql,输入数据库名kksde(数据库名字建议用小写字母,我在使用过程中只要输入大写字母就会报错,难道是Bug?),输入数据库服务器的密码,设置数据库的密码。

 

下一步使用ArcMap 连接数据库,

instanse 输入计算机名,或者localhost,如果是远程的话,需要输入IP,用户名是SDE,这个是固定的,密码就是安装数据库是你设置的密码,点击ok完成连接。

 

接下来就可以对数据库进行操作了。右键刚才连接上的SDE, new->FeaturesDataSet,并设置好投影,这里我设置为Web魔卡托,然后把全国边界的图导入到要素集中,方便我作为底图。接下来我new一个FeatureClass 名称为kkpolygon 类型为面,增加三个字段

 

 

然后我尝试为刚增加面要素类增加两个面,点击Editor 下拉箭头,StartEditing,很遗憾,无法编辑得到如下提示

上面说两个图层没有注册版本,接下来我们为该图层数据源所在的数据库注册版本。右键刚才的dataset,选择manage-Register as versioned

点击OK即可,接下来再次尝试编辑,StartEditing,这次没有错误提示

接下来,我添加了三个面,并为他们的属性字段赋值

 

编辑结束之后一定要结束编辑然后保存编辑结果,接下来就发布服务,File-ShareAs-pubulish a Service,选择本地的Server 为服务取名字为 MyFeatureService。下一步,出现ServiceEditor,在Capalities里选中FeatureAccess,在FeatureAccess里面可以选择,Create,Query,Update,Delete,是否允许用户对数据增删改查,默认是全选的。

然后我点击一下Analyze,又弹出了错误SEVERITY STATUS CODE DESCRIPTION NAME TYPE DATA FRAME
High Unresolved 00090 Feature service requires a registered database Layers Data Frame Layers,提示让我们为数据源所在的数据库注册(出于安全性考虑,如果要让Server能够访问SDE中的数据,必须将该SDE在Server中的DataStore中注册,也就是说,Server 只能访问Data Store目录中对应的数据),双击错误提示,然后弹出Data Store 窗口,点击+ ,随便写个名字我这里写的是zhucesde

 

 

 

接下来,点击Publisher database connection 中的Add 按钮,开始注册我们的数据库,这样注册以后我们的ArcGIS Server  就可以访问数据库的数据了,选择要注册的数据库,参考如下

点击ok ,ok,这样注册成功!

  接下来 再点击Analyze按钮,这样没有错误了,(虽然还有警告,但是我们可以发布服务的)点击Pubulish,稍等片刻发布成功

 

 

 


原文链接:http://blog.csdn.net/arcgis_all/article/details/8202684
加载中
返回顶部
顶部