1.运行ArcObjects代码报错:
IFeatureCursor pCursor = null;

            try
{
pCursor = m_pCatchLayer.m_pFeatureClass.Search(m_pSpatialFilter, false);
}
catch (Exception ex)
{ throw;
}

错误内容:

{"Underlying DBMS error [ORA-00604: 递归 SQL 级别 1 出现错误\nORA-01000: 超出打开游标的最大数\nORA-00604: 递归 SQL 级别 1 出现错误\nORA-01000: 超出打开游标的最大数\nORA-01000: 超出打开游标的最大数\n::SELECT  OBJECTID,  YSDM,  FLDM,  CDM,  MC,  SZ,  JB,  THXZ,  RL,  CJFS,  MAP,  JLSJ,  SCSJ,  MAPOBJECTID,  MAPOBJECTTIME,  1 SHAPE, ELEMID,  CLASID,  VERSION,  FDATE,  TDATE,  ENTILYRCOL,  ENTIIDCOL,  E_A21_MZSX_J_3204.SHAPE.area,  E_A21_MZSX_J_3204.SHAPE.len,  E_A21_MZSX_J_3204.SHAPE.points,E_A21_MZSX_J_3204.SHAPE.numpts,E_A21_MZSX_J_3204.SHAPE.entity,E_A21_MZSX_J_3204.SHAPE.minx,E_A21_MZSX_J_3204.SHAPE.miny,E_A21_MZSX_J_3204.SHAPE.maxx,E_A21_MZSX_J_3204.SHAPE.maxy,E_A21_MZSX_J_3204.rowid    FROM  FDBTX.E_A21_MZSX_J_3204 E_A21_MZSX_J_3204 WHERE SDE.ST_EnvIntersects(E_A21_MZSX_J_3204.SHAPE,:1,:2,:3,:4) = 1 ] [FDBTX.E_A21_MZSX_J_3204]"}

 

 

2.解释:

ArcSDE与ORACLE游标数

在空间数据库优化中,需要首先考虑ORACLE的性能优化,其中,OPEN_CURSORS参数是个比较重要的指标,会影响到系统的查询速度。

Oracle 初始化参数 OPEN_CURSORS 指定在任何时刻会话可同时打开的游标数。默认值是 300。如果会话尝试打开新游标,但此时已达到可打开游标数的最大值,那么将返回 Oracle 错误 -1000。ArcSDE 保留那些打开的、频繁执行的游标以提高性能。如果 Oracle OPEN_CURSORS 参数值设置得不够大,则将遇到上面提到的错误。Oracle 文档指出,给该参数设置非常大值不会产生不利影响。因此,可以设置非常大的值,例如,设置为 2000;从实用的角度来看,这样做即可有效地消除对打开游标数的限制,但同时又能提供一种保护措施,防止流氓进程尝试消耗过量的游标资源。相反,如果要计算会话可能打开的游标数,那么根据组织的数据模型,可将下面的公式作为指导:

各种 ArcSDE 数据管理游标 (20) +

各种匿名 PL/SQL 块 (20) +

空间查询 - 可能每个图层 6 个 +

日志文件查询 (11) +

编辑多版本化表时使用的其他查询 - 每个多版本化表或图层 12 个

如果文件中有 10 个图层被编辑时,ArcMap 应用程序可能打开 231 个游标 (20 + 20 + 60 + 11 + 120 = 231)。如果发现游标经常不够用,则可以 50 或 100 为增量增大 OPEN_CURSORS 参数值。

但需要注意的是Oracle 10g 预配置为当实例的已打开游标数超出 1200 时,生成服务器警报。由于 1200 个打开的游标对于地理数据库来说很常见,最好增大该警报的阈值以消除警报队列中出现无关的警告。

但设置非常大的游标数,需要更多的系统内存,因此要在实际情况下综合考虑。

 

3.查询游标数目语句:
show parameter open_cursors;

 

4.设置游标数目上限:
alter system set open_cursors=4000;

 

5.链接数据库方法:以sys身份登录PL/SQL,File->New->Command Window

 

6.查询正在使用的游标的数目sql语句
select count(*) from  v$open_cursor

 

 

select USER_NAME, count(*) from  v$open_cursor GROUP BY USER_NAME;

nORA-01000: 超出打开游标的最大数(SDE连接)的更多相关文章

  1. ORA-01000:超出打开游标的最大数(C#)

    在做一个windows服务,通过查询文本不断的插入数据的功能.测试一直没有问题,到实际环境中跑起来后程序退出,查看日志发现报的这个错误 ORA-01000:超出打开游标的最大数 经过上网查询发现是由于 ...

  2. oracle超出打开游标的最大数的原因和解决方案

    oracle超出打开游标的最大数的原因和解决方案 分类: Oracle相关2012-06-05 10:36 6362人阅读 评论(0) 收藏 举报 oracle数据库sqljavasessionsys ...

  3. Java_oracle超出打开游标的最大数的原因和解决方案

    第一步:核查Oracle数据库 的游标的最大数 处理超出打开游标的最大数异常(ORA-01000: maximum open cursors exceeded) ORA-01000_maximum_o ...

  4. [JDBC]ORA-01000: 超出打开游标的最大数(ORA-01000: maximum open cursors exceeded)

    问题产生的原因: Java代码在执行conn.createStatement()和conn.prepareStatement()的时候,相当于在数据库中打开了一个cursor.由于oracle对打开的 ...

  5. java.sql.SQLException: ORA-01000: 超出打开游标的最大数

    实际上,这个错误的原因,主要还是代码问题引起的.  ora-01000: maximum open cursors exceeded.  表示已经达到一个进程打开的最大游标数.  这样的错误很容易出现 ...

  6. ORA-00604: 递归 SQL 级别 1 出现错误 ORA-01000: 超出打开游标的最大数

    有程序没关闭游标, --打开了哪些游标 select * from v$open_cursor 在open cursor之后一定要注意要close cursor(在store procedure里更应 ...

  7. oracle异常处理——ORA-01000:超出打开游标最大数

    oracle异常处理--ORA-01000:超出打开游标最大数https://www.cnblogs.com/zhaosj/p/4309352.htmlhttps://blog.csdn.net/u0 ...

  8. 21. orcle导出sql脚本时,提示“超出打开游标最大数”

    1.解决办法:修改下打开游标最大数即可 SQL> show parameter open_cursors;NAME                                  TYPE   ...

  9. oracle 存储过程循环打开游标数据处理

    2017-07-24 14:12:42 SQL内容: 1.一次性检索 100000 条数据. 2. 1000 条提交一次. 3.超过 100000 万条,重新打开游标,重新检索. pl/sql内容如下 ...

随机推荐

  1. 怎样在win7上远程连接linux系统

    window操作系统的电脑 一台安装了linux系统的服务器 putty.exe小软件 方法/步骤   在前面的环境和软件都有的情况下,双击putty.exe软件,如下图:   在软件界面中的:Hos ...

  2. Codevs 1337 银行里的迷宫

    1337 银行里的迷宫 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 白银 Silver 传送门 题目描述 Description 楚楚每一次都在你的帮助下过了一关又一关(比如他开 ...

  3. SVM推导

    标准最大margin问题 假设data是linear seperable的 优化目标 希望 margin(w),i.e, 最小的点到直线的距离 最大 即是要得到最右的线,它对噪声的鲁棒性最好 得到的分 ...

  4. WinSock 异步I/O模型 转载

    如果你想在Windows平台上构建服务器应用,那么I/O模型是你必须考虑的.Windows操作系统提供了五种I/O模型,分别是: ■ 选择(select):■ 异步选择(WSAAsyncSelect) ...

  5. Net常用资源小集

    Visual Studio——IDEs工具之王,.NET开发者的必备IDE.Visual Studio提供非常强大的启动工具箱,并且还有一些让人惊喜的插件支持.在去年,微软发布了Visual Stud ...

  6. 《man男人》-linux命令五分钟系列之十五

    本原创文章属于<Linux大棚>博客,博客地址为http://roclinux.cn.文章作者为rocrocket. 为了防止某些网站的恶性转载,特在每篇文章前加入此信息,还望读者体谅. ...

  7. 初试jQuery EasyUI

    jQuery EasyUI jQuery EasyUI是一组基于jQuery的UI插件集合,而jQuery EasyUI的目标就是帮助web开发者更轻松的打造出功能丰富并且美观的UI界面.开发者不需要 ...

  8. 关于js效果不提示就执行了刷新(解决 在h-ui框架中)

    parent.layer.msg('保存成功!<script>setTimeout("window.location.reload();",1100);<\/sc ...

  9. myeclipse 项目运行时报错:运行项目时报错:Could not publish server configuration for Tomcat v6.0 Server at localhost. Multiple Contexts have a"/"

    1.先去E:\PLZT\workspace\.metadata\.plugins\org.eclipse.wst.server.core.sever.xml看里面是否存在两个配置是的话删除一个重启服务 ...

  10. fedora23开发环境搭建手册

    chrome安装 [安装chrome教程] nodejs环境搭建 dnf install nodejs dnf install npm sublime text 编辑器安装配置 [fedora安装su ...