欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

将shape文件导入sde中解决方法

更新时间: 2014-01-05 02:58:28 责任编辑: Author_N1

 

将shape文件导入sde中
如题,想实现这个功能,可是,有一步是,在连接SDE以后,要获取里面的数据集。

 Dim iPropertySet As New ESRI.ArcGIS.esriSystem.PropertySet
        Dim iSDEWorkspaceFactory As IWorkspaceFactory = New ESRI.ArcGIS.DataSourcesGDB.SdeWorkspaceFactory

        'On Error GoTo CheckErr

        With iPropertySet
            .SetProperty("SERVER", "TAO")
            .SetProperty("INSTANCE", "esri_sde")
            .SetProperty("USER", "sde")
            .SetProperty("PASSWORD", "11")
            .SetProperty("VERSION", "SDE.DEFAULT")
            .SetProperty("DATABASE", "sde")
        End With
        Try
            m_sdeWorksapce = iSDEWorkspaceFactory.Open(iPropertySet, 0)
            If m_sdeWorksapce IsNot Nothing Then
                MsgBox("SDE连接成功")
            End If
        Catch ex As Exception
            MsgBox(ex.Message)
            Exit Sub
        End Try
        Dim m_EnumDSName As IEnumDatasetName
        Dim m_SdeDSName As IDatasetName
        m_EnumDSName = m_sdeWorksapce.DatasetNames(ESRI.ArcGIS.Geodatabase.esriDatasetType.esriDTFeatureDataset)
        m_SdeDSName = m_EnumDSName.Next()


m_EnumDSName是空的……
想问的是
(1)m_sdeWorksapce.DatasetNames 得到的是什么?表?还是什么?
(2)sde数据库中是有表的,为什么m_EnumDSName是空呢?
求各位大神指教啊~~
--参考方法--
DatasetNames 这个方法主要是获取SDE中的某个类型数据枚举器,根据你传入的参数列出,
如果你想要显示表,那个类型应该是esriDTFeatureClass
SDE中可保存的数据类型相当多,参数要根据需要选择,如果不知道具体的数据类型,可以使用esriDTAny
这样可列出所有类型了

其实单纯的shp导入sde不用这么麻烦,直接使用arcsde自带的shp2sde工具就行了

http://blog.csdn.net/nickwar/article/details/6062806
--参考方法--
见这里
--参考方法--
 你用的ESRI.ArcGIS.Geodatabase.esriDatasetType.esriDTFeatureDataset
你改成esriDTFeatureClass试下
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:58:28
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/16817/
本文WWW.DOC100.NET DOC100.NET版权所有。