免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 5589 | 回复: 1
打印 上一主题 下一主题

执行PL/SQL,报这个错ORA-01410: invalid ROWID [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-03-06 16:44 |只看该作者 |倒序浏览
PL/SQL

DECLARE
   CURSOR rpt_table_cursor IS
   SELECT * FROM bfchk1 WHERE custcode='&code' FOR UPDATE;
   
   TYPE rpt_table_type IS TABLE OF bfchk1%ROWTYPE;
   rpt_table rpt_table_type;
  
BEGIN
   OPEN rpt_table_cursor;
   FETCH rpt_table_cursor BULK COLLECT INTO v_custcode,v_custname;
   FOR i IN 1..rpt_table.count LOOP
       UPDATE bfchk1 set custname='&name' WHERE CURRENT OF rpt_table_cursor;
   END LOOP;
END;


ORA-01410: invalid ROWID

请问怎么会出现这个错的?

表结构:
Name         Type          Nullable Default Comments
------------ ------------- -------- ------- --------
RPTNO        VARCHAR2(22)  Y                        
CUSTTYPE     VARCHAR2(1)   Y                        
IDCODE       VARCHAR2(32)  Y                        
CUSTCODE     VARCHAR2(12)  Y                        
CUSTNAME     VARCHAR2(12 Y                        
OPPNAME      VARCHAR2(12 Y                        
TXCCY        VARCHAR2(3)   Y                        
TXAMT        NUMBER(24,2)  Y                        
EXRATE       NUMBER(13,  Y                        
LCYAMT       NUMBER(24,2)  Y                        
LCYACC       VARCHAR2(32)  Y

论坛徽章:
0
2 [报告]
发表于 2008-03-06 23:16 |只看该作者
原帖由 boymag 于 2008-3-6 16:44 发表
PL/SQL

DECLARE
   CURSOR rpt_table_cursor IS
   SELECT * FROM bfchk1 WHERE custcode='&code' FOR UPDATE;
   
   TYPE rpt_table_type IS TABLE OF bfchk1%ROWTYPE;
   rpt_table rpt_table_type; ...


先手工执行UPDATE bfchk1 set custname='&name' WHERE custcode='&code';(plsql中涉及的条件)。是否能正常执行。

如果此时不能正常执行,那么该表bfchk1上是不是有custcode索引,如果有,drop and recreate index。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP