首页 / 浏览问题 / 桌面GIS / 问题详情
shp文件属性识别错误
17EXP 2020年04月21日

使用产品:supermap-iobjectsdotnet-10.0.1-18027-76100

操作系统:win10 x64

数据库:mysql 5.7

shp文件中有属性QYHFLX,在Supermap iDesktop中查看如图所示:

在代码中,记录找不到QYHFLX属性,而可以找到一个在Supermap iDesktop中不存在的属性“QHQYLX”

另外,QYHFLX列每一行都应该有值

我确定我的代码没有加载错shp文件,因为其他数据导入正常,也打断点查看了shp文件路径

请问这是什么原因呢?

2 个回答

我补充一下,这个属性原名“QHQYLX”,后来更名“QYHFLX”

shp文件有属性QYHFLX

在定义的数据库数据集只有QHQYLX的情况下,呈现结果如上述

后来通过超图软件往数据集里面添加了QYHFLX的字段,则QYHFLX可以读出数据了

所以是因为我的数据库数据集少了QYHFLX属性,所以即使shp文件有数据,也读取不了么?
17EXP 2020年04月21日
您好!您这个属性原名是“QHQYLX”,后来更名“QYHFLX”,请问更名是在idesktop的属性里面更改的吗?更改的是名称还是别名呢?
3,362EXP 2020年04月21日
你好,我是开发人员,不是我改的,所以我不清楚他们怎么改的。

我拿到的文件,在idesktop中shp文件显示的是“QYHFLX”(名称、别名均是),没有“QHQYLX”
您拿到的文件是shp数据然后自己导入文件型数据源里的还是拿到的是mysql数据库里存储的这个shp数据?
拿到的shp文件数据源,准备导入mysql数据库(已建立超图的数据集)
发我我这边测试一下呢,我的邮箱为huyannan@supermap.com
看评论第一条

在通过超图软件往(mysql数据库的)数据集里面添加了QYHFLX的字段,则shp的QYHFLX可以读出数据了

我就很迷惑,为什么mysql数据库的数据集会影响到shp的读取问题

我司长期需要使用你们的sdk,你们这样让我们开发难度增大啊……

就算会影响,能不能给个友好提示?
您的描述我有一点不懂,您说的mysql数据库的数据集会影响到shp的读取是啥?

如果您是文件型数据源里有矢量数据集,现在是将矢量数据集复制到mysql数据库型数据源里,那么在复制前您修改了矢量数据集的字段名,那存到mysql数据库型数据源里的矢量数据集字段名就是您修改后的字段名。

如果您是复制后修改了文件型数据源里的矢量数据集字段名,那么mysql数据库型数据源里的矢量数据集字段名仍然是修改之前的字段名,它不随文件型数据源里数据集属性的改变而改变。

两个数据源是独立的,互不影响。
嗯,二者是互不影响的。

不好意思,是我这边的一个通用方法赋值的逻辑(从shp文件到数据库),让我在后面单表独立的数据处理上出现了这样的问题,和你们的sdk无关。
因为你们家的sdk之前给我的感官不太好,所以我第一时间就来提问了=.=
...