`

ORA-01007: variable not in select list(选择列表中没有变量)

阅读更多

并发程序报错:ORA-01007: variable not in select list(选择列表中没有变量) 以及相关动态指针写法

 

 网上的解决方法:

Cause: A reference was made to a variable not listed in the SELECT clause. In OCI, this can occur if the number passed for the position parameter is less than one or greater than the number of variables in the SELECT clause in any of the following calls: DESCRIBE, NAME, or DEFINE. In SQL*Forms or SQL*Report, specifying more variables in an INTO clause than in the SELECT clause also causes this error.
Action: Determine which of the problems listed caused the problem and take appropriate action.

select语句本身没有问题,错误原因是:在构造游标时数据个数不一致。比如,一个表TA有3个域A,B,C。我们构造查询语句为:SELECT A FROM TA WHERE B='12' AND C='12'。但是在构造游标时,使用了EXEC SQL FETCH table_cursor INTO :A,:B,:C;,而不是EXEC SQL FETCH table_cursor INTO :A;。这样变量数目就不一致,会导致错误。

 

实际的问题:在使用动态指针的时候,将资料指到对应的SQL  并且fetch into  相对应的 record 类型,但是此记录定义的变量与SQL指针的变量不一致导致的。

 

转自:http://www.cnblogs.com/toowang/archive/2012/04/19/2456803.html

分享到:
评论

相关推荐

    ora-01033:oracle initialization or shutdown in progress 解决方法

    ### ora-01033: Oracle Initialization or Shutdown in Progress 解决方法 #### 一、问题背景及原因 **标题**: “ora-01033: Oracle initialization or shutdown in progress 解决方法” **描述**: “ora-01033: ...

    如何处理错误ORA-29275:部分多字节字符

    ### 如何处理错误ORA-29275:部分多字节字符 #### 问题背景与描述 在Oracle数据库操作过程中,用户可能会遇到一个特定的错误提示——ORA-29275:部分多字节字符。这一错误通常出现在执行查询`SELECT * FROM V$...

    ORA-32001:请求写入spfile,但没有使用spfile的解决方法

    ORA-32001:write to spfile requested but no spfile is in use请求写入spfile,但没有使用spfile的解决方法 在输入以下语句中报了这样的错误: SQL>alter system set control_files=’/u01/app/oracle/oradata/prod/...

    Oracle 授权 ORA-00990: 权限缺失或无效

    在Oracle数据库管理中,"ORA-00990: 权限缺失或无效"是一个常见的错误代码,它表示用户尝试执行的操作没有足够的权限。这个错误通常发生在试图访问、修改或者管理数据库对象(如表、视图、索引等)时。在本篇文章中...

    ORA-04052p5731178_92080_WINNT.zip

    ORA-00604: 递归SQL层1出现错误 ORA-03106: 致命的双工通信协议错误 ORA-02063: 紧接着line(源于dblink) 以及 ORA-04052: 在查找远程对象时出错 ORA-00604: 递归SQL层1出现错误 ORA-03120: 双工转换例行程序:整数...

    oracle特有的错误:ORA-01036:非法的变量名/编号

    在Oracle数据库系统中,"ORA-01036:非法的变量名/编号"是一个常见的错误,通常出现在PL/SQL代码或者SQL查询语句中,当你尝试使用一个不正确或者未定义的变量时,Oracle数据库会抛出这个错误。这个错误可能是由于...

    ORA-12154: TNS: 无法解析指定的连接标识符的解决方法

    ORA-12154: TNS: 无法解析指定的连接标识符的解决方法

    oracle报错大全(珍藏版)

    #### ORA-00086: User Not Logged In 用户未登录。这可能是由于会话初始化错误或逻辑错误。 #### ORA-00087: Unable to Execute Remotely 无法远程执行。这可能是由于网络连接问题、安全策略限制或其他远程执行问题...

    Oracle 回收站功能,彻底删除表ORA-00933:SQL command not properly ended

    ORA-00933: SQL command not properly ended ``` 解决方法是确保SQL语句完整无误,并使用正确的语法进行删除操作。 #### 四、总结 Oracle的回收站功能为用户提供了一个方便的方式来管理数据库对象的删除与恢复,极...

    oracle12c ORA-01017: 用户名/口令无效; 登录被拒绝 解决方案

    oracle12c程序连接时异常: ORA-01017: 用户名/口令无效; 登录被拒绝 的解决方案。

    ORA-00060: 等待资源时检测到死锁--oracle 数据库表死锁异常

    在Oracle数据库系统中,"ORA-00060: 等待资源时检测到死锁" 是一个常见的错误提示,它表明两个或多个事务在执行过程中陷入了无法继续进行的状态,因为彼此都在等待对方释放资源。这种情况通常发生在并发操作中,比如...

    CLOB 字段类型报错 ORA-01704: 文字字符串过长的解决

    而对于CLOB类型,虽然没有硬性长度限制,但一次PL/SQL语句中的绑定变量值不能超过4000个字符。 在处理这类问题时,有几种常见的解决方案: 1. **分块插入**: 当你的数据长度超过了4000个字符,你可以选择分批...

    Oracle错误码大全

    ORA-00001: 违反唯一约束条件 (.) ORA-00017: 请求会话以设置跟踪事件 ORA-00018: 超出最大会话数 ORA-00019: 超出最大会话许可数 ORA-00020: 超出最大进程数 () ORA-00021: 会话附属于其它某些进程;无法转换...

    ORA-00031:标记要终止的会话

    在处理Oracle数据库时,我们经常遇到错误代码ORA-00031,它表明指定的会话已经被标记为终止。这个错误通常与数据库锁定和会话管理有关。本文将详细解析这一问题的解决方案,并提供一系列SQL语句和命令来处理和解决...

    WMSYS.zip解决ORA-00904:

    -- 解决ORA-00904: "WMSYS"."WM_CONCAT": 标识符无效 的文件包....... -- 解决ORA-00904: "WMSYS"."WM_CONCAT": 标识符无效 的文件包....... -- 解决ORA-00904: "WMSYS"."WM_CONCAT": 标识符无效 的文件包....... ...

    ORA-12518 TNS:监听程序无法分发客户机连接

    ORA-12518 TNS:监听程序无法分发客户机连接,在您安装好数据库后配置连接数据库的过程中遇到这类问题应该很头疼吧,不过,当您还是四处查资料来解决您遇到的另你头疼的问题时,如果不经意间看到了这则贴子,那请您升...

    p7331323_10204_AIX5L

    ORA-27303: additional information: MTU could not be verified. Did not receive valid message. These errors are caused by more aggressive checking introduced in 10.2.0.4. Likelihood of Occurrence ...

    oracle报错ora-12541:TNS无监听程序

    oracle报错ora-12541:TNS无监听程序

Global site tag (gtag.js) - Google Analytics