ArcGIS Desktop 无法录入数据处理一例
最近,搭建了一个DB2的测试环境,装完系统后,发现有一个美国带的样例数据无法导入,详细环境如下: 桌面:Desktop 10.3.1 从错误信息上得不到任何的提示,继续做测试 继续测试,由于原数据存储在FileGDB中因此可以使用拷贝粘贴的功能进行数据录入,在粘贴中报如下错误: 报SQL0268错误,查询SQL0268具体信息如下: SQL0268N 当正在重新分发数据库分区组时,不能执行 "<操作>"。 说明: 下列其中一项适用,由 "<操作>" 指示: * 正在重新分发数据库分区组,在完成当前操作之前,不能再次改变、删除或重 新分发该数据库分区组。 * 当正在重新分发表的数据库分区组时,不能删除该表的分区键。 * 不能创建新对象,因为 REDISTRIBUTE 正在删除此数据库分区组中所有旧的数 据库分区。 * 不能通过 ALTER TABLE 来添加新列,因为 REDISTRIBUTE 正在删除此数据库 分区组中所有旧的数据库分区。 无法处理该语句。 用户响应: 等到完成重新分发之后再次尝试该请求。 sqlcode:-268 sqlstate:55038 这个错误就非常明确了,是因为创建表需要16k页的表空间,但是现有的数据库默认表空间的页大小为4k,不够。 为什么需要16k的表空间呢,继续查看源数据,发现数据的几个Text类型的字段设置的最大大小都是2048,一个是6个字段,大小为12k,由于DB2数据库记录不能跨页存储(oracle是可以的,因此在oracle数据库上不存在这个问题),因此需要一个16k页面的表空间才可以,这也是为什么不录入属性字段就能录入进去的原因。 知道原因解决就容易多了,可以有以下几种解决方案。
C:Program FilesIBMSQLLIBBIN>db2 CREATE BUFFERPOOL BUFBP16K IMMEDIATE SIZE 2 50 PAGESIZE 16 K DB20000I SQL 命令成功完成。 C:Program FilesIBMSQLLIBBIN>db2 CREATE REGULAR TABLESPACE SDETBS16K PAGESI ZE 16 K MANAGED BY AUTOMATIC STORAGE EXTENTSIZE 16 OVERHEAD 10.5 PREFETCHSIZE 1 6 TRANSFERRATE 0.14 BUFFERPOOL BUFBP16K DROPPED TABLE RECOVERY ON DB20000I SQL 命令成功完成。 将SDE的关键字导出出来 编辑export .ext DEFAULTSA_INDEX_ROWID “” 重新拷贝粘贴即可。 (编辑:天瑞地安资讯网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |