sitemap

RSS地图

收藏本站

设为首页

Oracle研究中心

当前位置:Oracle研究中心 > 故障案例 >

【案例】Oracle报错PLS-00960 PLS-01415原因和解决办法笔记

时间:2016-11-14 22:04   来源:Oracle研究中心   作者:网络   点击:

天萃荷净 PLS-00960的RPC可以不使用架构级别的用户定义类型,在此版本中的变量
原因:模式级别的用户定义类型,或递归使用这种类型的类型,不能使用的RPC。例如:

创建为对象的类型为foo(...)
创建包my_pack
类型my_tab是foo表;
- 在远程服务器上:
x my_pack.my_tab @ RPC - 企图非法使用类型my_tab,

操作:使用RPC调用PL / SQL中定义的类型。它可能需要额外的代码添加到本地类型的元素副本的顶级类型,以推动这些数据通过RPC。


PLS-00970的方法的类的名称必须匹配,类型头EXTERNAL NAME子句
原因:类名定义为方法签名的一部分不符合在EXTERNAL NAME子句的类型标头中定义的。

创建类型为对象的外部名'foo'的语言Java(富...
会员功能我(数量)返回数
外聘名“bar.func(oracle.sql.NUMBER)返回oracle.sql.NUMBER”
...);

行动:无论是从方法签名省略类的名称或使用类型标头中定义一个。


PLS-00989游标变量记录,对象或集合中不支持此版本
原因:游标变量输入的记录,对象,或集合。这是不支持在此发布的PL / SQL。

行动:重写你的应用使用独立的游标变量和/或参数,或使用记录,考虑降级的PL / SQL 2.3。


PLS-00990索引表,游标变量是不允许的
原因:尝试建立一个PL / SQL中使用游标变量的索引表。

行动:重写你的应用程序,使用独立的游标变量和过程参数的PL / SQL索引表,记录和循环。


PLS-00992游标变量不能被FETCH'ed
原因:试图执行一个FETCH从游标变量。

行动:考虑升级到2.3的PL / SQL,这种限制是不存在的,或者重写你的应用程序使用OCI或预编译器用于FETCH。


PLS-00993游标变量不能传递RPC参数或结果
原因:试图通过游标变量或从远端的子程序,这是不允许的。例如,远程过程不能被用来打开一个游标变量,因为远程子程序不能返回游标变量的值。

行动:更改子程序调用引用一个本地数据库。


PLS-00994游标变量不能被声明为一个包的一部分
原因:尝试了包中的规范,这是不允许的声明游标变量。 REF CURSOR类型,虽然可以在一个PL / SQL块,子程序或包中定义游标变量可以被声明,只有在一个块或子程序。

行动:移动游标变量声明成PL / SQL块或子程序。


PLS-00995未处理的异常#字符串
原因:提出的处理程序没有发现异常。如果它不能找到一个凸起的异常处理程序,PL / SQL返回一个未处理的异常的主机环境。嵌入在邮件中的电话号码是甲骨文在本手册中列出的错误代码。

行动:修复提出了异常的状况,写一个适当的异常处理程序,或使用其他处理程序。在当前块,如果有一个合适的处理程序,异常被提出申报或异常处理程序,因此立即传播到封闭块。


PLS-00996内存
原因:从PL / SQL请求更多的内存失败。

行动:确保你不会引用一个PL / SQL表中的错误行,该程序不递归太深。


PLS-00997没有游标返回类型允许在这个beta版
原因:此时不提供。

行动:请不要使用。


PLS-01400使用'| |'令牌
原因:不使用'| |'在表达式中的标记是在ANSI的语法。这相当于减少“binary_add_op”的一个“CAT_”在plsql.y。

行动:有关详情,请参阅ANSI文件的ANSI X3.135-1992。


PLS - 01401标识符超过18个字符长
原因:只要不超过18个字符的标识符允许根据ANSI语法。

行动:有关详情,请参阅ANSI文件的ANSI X3.135-1992。


PLS-01402使用引号的标识符
原因:使用带引号的标识符是一个PL / SQL扩展和没有根据的ANSI语法允许。

行动:有关详情,请参阅ANSI文件的ANSI X3.135-1992。


PLS-01403注释定界符/ ** /
原因:C风格的注释('/'和'*'字符的介绍)的ANSI语法的一部分。要符合ANSI,评论必须的ANSI评论介绍人,“ - ”之前,必须不包含换行符。

行动:有关详情,请参阅ANSI文件的ANSI X3.135-1992。


PLS-01404的ANSI标识符只能由字母,数字和下划线
原因:的ANSI标识符只能由字母,数字和下划线。 PL / SQL允许在标识符中的“#”和“$”,但这些不是ANSI。

行动:有关详情,请参阅ANSI文件的ANSI X3.135-1992。


PLS-01405根据ANSI的语法,在指数notationmust代表的数字数据,使用大写字母E
原因:根据ANSI的语法,在指数表示法表示的数字数据必须使用一个大写的“E”。例如:3.45E-6是ANSI,但3.45e-6是不是。

行动:有关详情,请参阅ANSI文件的ANSI X3.135-1992。


PLS-01406的标识符已被发现,被认为是一种ANSI的语法关键字,但不能在PL / SQL的
原因:被认为是在ANSI的语法关键字,标识符已被发现,但不能在PL / SQL的。

行动:有关详情,请参阅ANSI文件的ANSI X3.135-1992。


PLS-01407的标识字符,字符或整数之一,已被重新定义由程序员
原因:标识符之一的“字符”,“性格”,或“整数”(所有ANSI关键字)已经由程序员重新定义。

行动:有关详情,请参阅ANSI文件的ANSI X3.135-1992。


PLS-01408'和'令牌的使用
原因:使用'&'在表达式中的令牌是不是在ANSI的语法。

动作:参照的ANSI文件ANSI X3.135-1992for详细说明。


PLS-01409使用'PRIOR_'令牌
原因:使用表达式中的“PRIOR_”令牌是不是在ANSI的语法。

行动:有关详情,请参阅ANSI文件的ANSI X3.135-1992。


PLS-01410使用“国防部”令牌
原因:使用表达式中的“国防部”令牌是不是ANSI的语法。

行动:有关详情,请参阅ANSI文件的ANSI X3.135-1992。


PLS-01411使用“快速眼动的令牌
原因:使用表达式中的“快速眼动”令牌是不是在ANSI的语法。

行动:有关详情,请参阅ANSI文件的ANSI X3.135-1992。


PLS-01412使用“进出口”令牌
原因:使用表达式中的“进出口”令牌是不是在ANSI的语法。

行动:有关详情,请参阅ANSI文件的ANSI X3.135-1992。


PLS-01413使用NULL的表达式
原因:使用空没有在ANSI的语法表达。

行动:有关详情,请参阅ANSI文件的ANSI X3.135-1992。


PLS-01414使用合格的表达
原因:使用合格表达这里是不是在ANSI的语法。

行动:有关详情,请参阅ANSI文件的ANSI X3.135-1992。


PLS-01415的总价值在这里使用
原因:总价值在这里使用的是ANSI的语法。

行动:有关详情,请参阅ANSI文件的ANSI X3.135-1992。

--------------------------------------ORACLE-DBA----------------------------------------

最权威、专业的Oracle案例资源汇总之【案例】Oracle报错PLS-00960 PLS-01415原因和解决办法笔记

本文由大师惜分飞原创分享,网址:http://www.oracleplus.net/arch/1270.html

Oracle研究中心

关键词:

PLS-00960

PLS-01415