之前在做shp数据导入Geodatabase中时,程序运行出现错误提示:“The spatial index grid size is invalid”。

后来查阅esri帮助找到了原因。是LoadOnlyMode的问题。记下来,以后好好研究。

http://support.esri.com/en/knowledgebase/techarticles/detail/35007

Error:  The spatial index grid size is invalid

Article ID: 35007
Software:  ArcGIS - ArcEditor 9.3, 9.3.1, 10 ArcGIS - ArcInfo 9.2, 9.3, 9.3.1, 10 ArcGIS - ArcView 9.2, 9.3, 9.3.1, 10
Platforms: N/A

Error Message

When creating a new feature through either the CreateFeature and Store method or the use of an InsertCursor, the creation fails with the following error:

"FDO_E_INVALID_GRID_SIZE 
-2147216894 
The spatial index grid size is invalid."

Cause

The FDO_E_INVALID_GRID_SIZE error is raised because the grid size of the feature class where the feature is being created is too small to handle the feature. This error only occurs with File or ArcSDE Geodatabases.

Solution or Workaround

Depending on how the error message is being raised, there are two different ways to handle the error.

  1. If this error is encountered while editing within ArcMap, recalculate or modify the grid size of the feature class to accommodate the new feature. The recalculation of the grid size must be done from the Feature Class properties dialog box within ArcCatalog. This requires the use of the Stop Editing function, save any edits, and close the Map Document containing the feature class. For steps on how to recalculate or modify the grid size of a feature class, see the following Web help documentation: Setting spatial indexes.
  2. If this error is being encountered programmatically through the ArcObjects API, notifying the user to manually modify the spatial index is not an ideal solution. Instead, this error can be prevented by placing the feature class into LoadOnly mode prior to inserting the feature. When the feature class is taken out of LoadOnly mode, the Geodatabase automatically recalculates an appropriate grid size. The following code sample demonstrates how to use LoadOnly mode with a feature class: 
    'Place the feature class in loadonly mode. This steps needs to happen prior to calling IFeature.Store or IFeatureCuror.InsertCursor

    Dim pFCLoad As IFeatureClassLoad

    Set pFCLoad = pFeatureClass

    pFCLoad.LoadOnlyMode = True 'Create feature buffer

    Dim pFeatBuffer As IFeatureBuffer

    Set pFeatBuffer = pFeatureClass.CreateFeatureBuffer

    Set pFeatBuffer.Shape = pGeometry 'Create insert cursor and insert buffer

    Dim pCursor As IFeatureCursor

    Set pCursor = pFeatureClass.Insert(True) 'Insert the feature and call flush

    pCursor.InsertFeature pFeatBuffer

    pCursor.Flush 'Take the feature class out of loadonly mode, the Geodatabase will calculcate an appropriate grid size based on the features within the feature class

    pFCLoad.LoadOnlyMode = False

空间索引网格大小无效的解决方法The spatial index grid size is invalid的更多相关文章

  1. 设置height:100%无效的解决方法

    设置height:100%无效的解决方法 刚接触网页排版的新手,常出现这种情况:设置table和div的高height="100%"无效,使用CSS来设置height:" ...

  2. WPF:指定的命名连接在配置中找不到、非计划用于 EntityClient 提供程序或者无效的解决方法

    文/嶽永鹏 WPF 数据绑定中绑定到ENTITY,如果把数据文件做成一个类库,在UI文件中去应用它,可能遇到下面这种情况. 指定的命名连接在配置中找不到.非计划用于 EntityClient 提供程序 ...

  3. 移动端bug~~移动端:active伪类无效的解决方法【移动端 :active样式无效】

    移动端:active伪类无效的解决方法[移动端 :active样式无效]2016-09-26  15:46:50 问题: 移动端开发的时候实现按钮的点击样式变化,但是在iphone[safiri Mo ...

  4. js中style.display=""无效的解决方法

    本文实例讲述了js中style.display=""无效的解决方法.分享给大家供大家参考.具体解决方法如下: 一.问题描述: 在js中我们有时想动态的控制一个div显示或隐藏或更多 ...

  5. redhat linux enterprise 5 输入ifconfig无效的解决方法

    redhat linux enterprise 5 输入ifconfig无效的解决方法   在安装完成linux后,进入终端,输入命令行ifconfig,会提示bash: ifconfig: comm ...

  6. 排错-安装SQl 2008“为SQL Server代理服务提供的凭据无效的解决方法

    安装SQl 2008“为SQL Server代理服务提供的凭据无效的解决方法 by:授客 QQ:1033553122 在Windows Server 2008安装SQL Server 2008出现的问 ...

  7. Node.js中针对中文的查找和替换无效的解决方法

    Node.js中针对中文的查找和替换无效的解决方法.   //tags的值: tag,测试,帖子 var pos1 = tags.indexOf("测"); //这里返回-1 ta ...

  8. QWidget子窗口中setStyleSheet无效,解决方法

    继承 QWidget setStyleSheet无效,解决方法. 发现 继承自QWidget的自定义类 ,使用setStyleSheet无效, 如果删除头文件中的 Q_OBJECT,setStyleS ...

  9. 表格Table宽度设置无效的解决方法

    表格Table宽度设置无效的解决方法 bootstrap中使用table时发现不管用width赋值方式都无法改变table>td的宽度 解决方法: 设置table:table-layout:fi ...

随机推荐

  1. effective c++读书笔记(一)

    很早之前就听过这本书,找工作之前读一读.看了几页,个人感觉实在是生涩难懂,非常不符合中国人的思维方式.之前也有博主做过笔记,我来补充一些自己的理解. 我看有人记了笔记,还不错:http://www.3 ...

  2. 动手编写TCP服务器系列之一:日志文件

    前言 在几个月之前,笔者想自己实现一个性能比较良好的基于tcp的服务器.于是断断续续写了个把月,因为还需要找工,还有论文什么的.拖了这么久.现在开辟这样的一个博客,我想记录下自己的思路,也和大家分享自 ...

  3. Linux 基础——常用的Linux网络命令

    一.学Linux网络命令有什么好处 网络的出现,我们的生活更方便了,处理事情的效率也越来越高,也可以看到全世界文化的差异.同时我们接受新事物的信息越来越来强,新事物的信息也越来越来多.网络对于我们尔等 ...

  4. cocos2dx 开发配置的一些环境变量(mac/linux)

    通常开发需要配置一些环境变量,下面把我电脑的部分配置分析一下. 1.android开发配置,ndk,sdk,ant 2.cocos2dx开发配置,cocos2d-x export COCOS2DX_R ...

  5. (转载)Linux入门:操作目录和文件的命令

    PATH   每个用户的PATH都是不一样的: PATH中不包含“当前目录”: (1)echo $PATH:显示PATH环境变量: (2)PATH = "$PATH":/home/ ...

  6. LR 报错误: C interpreter run time error: Error -- Unresolved symbol : vuser_end解决方法

    Action.c(33): Error: C interpreter run time error: Action.c (33):  Error -- Unresolved symbol : vuse ...

  7. 500 多个 Linux 命令文档搜索

    500 多个 Linux 命令文档搜索 搜索界面:https://wangchujiang.com/linux-command/ 源码:https://github.com/jaywcjlove/li ...

  8. centos7 lamp环境搭建

    一.安装Apache1.安装yum -y install httpd2.开启apache服务systemctl start httpd.service3.设置apache服务开机启动systemctl ...

  9. fastadmin iframe 表单提交之后跳转

    controller 对应的那个js文件中添加: define(['jquery', 'bootstrap', 'backend', 'table', 'form'], function($, und ...

  10. Python加密模块-pycryptodome

    这个模块可以避开Pycrypto安装时带来的一系列包依赖问题. 安装命令: pip install pycryptodome 使用实例: from Crypto.Cipher import AES k ...