首页 / 浏览问题 / 桌面GIS / 问题详情
值域设定多于数据库中含有的值域
11EXP 2022年06月29日

使用产品:iDesktopX 10i(2020)   操作系统:win10 x64 

版本号:10.1.0.1116.4888 x64(SuperMap iObjects Java:10.1.0.83124)

问题描述:在进行值域设定的过程中,发现设定新的值域后,数据库中便找不到原有的值域设定;但是在界面的下拉框中还可以找到原本的值域设定。具体可见图片

1个回答

您好,

您的意思是否是在桌面中设置了值域后,在数据库中对应的表没有更新到信息呢?

当桌面端设置了值域,设置了枚举值并应用后。在数据库中关闭表再重新打开,smdomains/smdomainfield表中会更新上修改的内容。

希望能够帮助到您!
2,199EXP 2022年06月29日
不是。我的想表达的意思是:

①先设置“字段1”的值域为“值域A”点击应用。确认数据库中smdomains/smdomainfield表与界面相符合。

②再次设置“字段1”的值域,新建“值域B”,点击应用。确认数据库中smdomains/smdomainfield表与界面相符合。

③点击“属性-值域”界面中表格内“字段1”对应值域“值域B”,会出现下拉框,下拉框中的值域列表中有“值域A”,但是我在数据库的smdomains/smdomainfield表中未找到“值域A”的相关信息。(smdomainfield表中没有可以理解,毕竟值域A没有设置关联字段。不理解的是smdomain表中也没有“值域A”的信息,但是界面中出现值域A)
此信息是储存在一个表的其中一个二进制字段里面,为二进制字段,由于是二进制的,因此具体信息无法看到。
方便告知一下,具体的表和字段吗?

范围值域在smrangedomains表的domainrangeinfos字段

枚举值域在smcodedomains表的domaincodeinfos字段

此部分内容均为二进制信息。无法直接浏览。

我打开一个新的工作空间,然后新建了一个文本型数据源,接着导入了一个数据集,发现之前工作空间的值域都还在下拉框的选项中,查询数据库中并无任何值域信息。

请仔细查看之前回复值域信息存储位置。

范围值域在smrangedomains表的domainrangeinfos字段

枚举值域在smcodedomains表的domaincodeinfos字段

此部分内容均为二进制加密信息。无法直接浏览。

值域信息是数据集属性,存储在数据源中,如设置值域的数据集复制到另一数据源,其属性不变,值域信息一同存入新数据源。

如新建工作空间,新建文本型数据源,并通过iDesktopX中功能导入数据集则不会存留之前修改的枚举值。
...