注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

程序员驿站

淘宝店:http://shop106888457.taobao.com

 
 
 

日志

 
 

在线编辑(一)数据准备  

2013-06-13 14:26:24|  分类: sl&gis |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
本博文的所用到的软件环境如下,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数据库:

在线编辑(一)数据准备 - dingtao-wgs - 程序员驿站

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

 

在线编辑(一)数据准备 - dingtao-wgs - 程序员驿站

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

在线编辑(一)数据准备 - dingtao-wgs - 程序员驿站

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

 

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

在线编辑(一)数据准备 - dingtao-wgs - 程序员驿站

  

在线编辑(一)数据准备 - dingtao-wgs - 程序员驿站

 

 

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

在线编辑(一)数据准备 - dingtao-wgs - 程序员驿站

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

在线编辑(一)数据准备 - dingtao-wgs - 程序员驿站

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

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

在线编辑(一)数据准备 - dingtao-wgs - 程序员驿站

 

 

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

在线编辑(一)数据准备 - dingtao-wgs - 程序员驿站

 

在线编辑(一)数据准备 - dingtao-wgs - 程序员驿站

 

然后我点击一下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

 

 

在线编辑(一)数据准备 - dingtao-wgs - 程序员驿站

 

 

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

在线编辑(一)数据准备 - dingtao-wgs - 程序员驿站

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

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

在线编辑(一)数据准备 - dingtao-wgs - 程序员驿站

 

 

  评论这张
 
阅读(403)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018