9500 ~ 9999
此范围表示过程语言 (PL)错误码。
ERROR 9502 (HY000) : OUT and IN/OUT modes cannot be used in this context
-
seekdb 错误码:9502
-
错误原因:仅当动态语句的 DML 语句含
returning变量,并且外部没有INTO变量时,才允许使用OUT参数。 -
解决方式:检查动态语句使用
OUT参数的用法是否符合规范。
ERROR 9503 (HY000) : object '%.*s' of type %.*s not found in schema '%.*s'
-
seekdb 错误码:9503
-
错误原因:不存在指定类型和名称的对象。
-
解决方式:使用正确的类型和对象名。
ERROR 9506 (HY000) : Only schema-level programs allow %s
-
seekdb 错误码:9506
-
错误原因:
INVOKER RIGHT子句 仅允许在 standalone 的 Procedure 或 Function 里定义。 -
解决方式:删除
INVOKER RIGHT子句。
ERROR 9507 (HY000) : at most one declaration for '%.*s' is permitted
-
seekdb 错误码:9507
-
错误原因:在同一个命名空间发现了重复的标识符。
-
解决方式:确保在同一个命名空间标识符的唯一性。
ERROR 9508 (HY000) : duplicate fields in RECORD,TABLE or argument list are not permitted
-
seekdb 错误码:9508
-
错误原因:PL 具有同名参数。
-
解决方式:PL 的参数名需要保持唯一。
ERROR 9509 (HY000) : Pragma AUTONOMOUS_TRANSACTION cannot be specified here
-
seekdb 错误码:9509
-
错误原因:自治事务子句出现的位置不对,只能出现在第一层 Block。
-
解决方式:修改自治事务子句的位置。
ERROR 9510 (HY000) : illegal EXIT/CONTINUE statement; it must appear inside a loop
-
seekdb 错误码:9510
-
错误原因:
EXIT或CONTINUE语句必须用在一个循环体内。 -
解决方式:检查
EXIT或CONTINUE子句是否使用正确。
ERROR 9512 (HY000) : EXIT/CONTINUE label '%.*s' must label a LOOP statement
-
seekdb 错误码:9512
-
错误原因:
EXIT或CONTINUE子句的目的端不是一个有效 Label。 -
解决方式:检查
EXIT或CONTINUE的目的端 Label 是否有效。
ERROR 9513 (HY000) : expression '%.*s' is inappropriate as the left hand side of an assignment statement
-
seekdb 错误码:9513
-
错误原因:静态游标不能被用来赋值。
-
解决方式:检查赋值语句的合法性。
ERROR 9514 (HY000) : a variable declared NOT NULL must have an initialization assignment
-
seekdb 错误码:9514
-
错误原因:
NOT NULL约束的变量没有被显式初始化。 -
解决方式:去掉
NOT NULL约束,或者显式初始化变量。
ERROR 9515 (HY000) : Constant declarations should contain initialization assignments
-
seekdb 错误码:9515
-
错误原因:Constant 变量没有被显式初始化。
-
解决方式:去掉 Constant,或者显式初始化变量。
ERROR 9516 (HY000) : Cursor Variables cannot be declared as part of a package
-
seekdb 错误码:9516
-
错误原因:游标不允许在 PACKAGE 中声明。
ERROR 9518 (HY000) : value in LIMIT clause: \'%.*s\' use is invalid
-
seekdb 错误码:9518
-
错误原因:
LIMIT子句的表达式数据类型不正确。 -
解决方法:修改数据类型为数字类型。
ERROR 9519 (HY000) : expression is of wrong type
-
seekdb 错误码:9519
-
错误原因:表达式的结果类型不符合预期。
-
解决方法:请检查表达式的结果类型。
ERROR 9520 (HY000) : cannot compile body of '%.*s' without its specification
-
seekdb 错误码:9520
-
错误原因:UDT 缺少 SPEC 申明。
-
解决方法:请先添加 SPEC 申明。
ERROR 9521 (HY000) : subprogram '%.*s' is declared in an object type body and must be defined in the object type specification
-
seekdb 错误码:9521
-
错误原因:Object 中的函数定义必须在 SPEC 中先声明。
-
解决方法:在 SPEC 中申明函数。
ERROR 9522 (HY000) : subprogram or cursor '%.*s' is declared in an object type specification and must be defined in the object type body
-
seekdb 错误码:9522
-
错误原因:Object 中的子过程或者 Cursor 在 SPEC 中申明了,必须在 BODY 中进行定义。
-
解决方法:删除申明或者对申明进行定义。
ERROR 9523 (HY000) : An object type may have only 1 MAP or 1 ORDER method
-
seekdb 错误码:9523
-
错误原因:一个 Object 类型只能定义一个
MAP或者ORDER函数(不能同时定义MAP或ORDER函数)。 -
解决方法:去除多余的
MAP或ORDER函数,保留一个合适的函数。
ERROR 9524 (HY000) : A MAP or ORDER function is required for comparing objects in PL/SQL
-
seekdb 错误码:9524
-
错误原因:在 PL 中比较 Object 类型,需要定义一个
MAP或者ORDER函数。 -
解决方法:定义一个合适的
MAP或者ORDER比较函数。
ERROR 9525 (HY000) : Only a function may be a MAP, ORDER or CONSTRUCTOR method
-
seekdb 错误码:9525
-
错误原因:
MAP、ORDER或者CONSTRUCTOR必须定义为一个 FUNCTION。 -
解决方法:修改定义并重新编译。
ERROR 9526 (HY000) : identifier '%.*s' too long
-
seekdb 错误码:9526
-
错误原因:Label 的名称过长,最大只允许128字符。
-
解决方法:修改长度。
ERROR 9527 (HY000) : a static method cannot be invoked on an instance value
-
seekdb 错误码:9527
-
错误原因:实例不能调用静态函数。
-
解决方法:修改调用方法,使用类型名调用。
ERROR 9528 (HY000) :constructor method name must match type name
-
seekdb 错误码:9528
-
错误原因:构造函数名称必须和类型名相同。
-
解决方法:确保两者相同。
ERROR 9529 (HY000) :previous use of '%.*s' conflicts with this use
-
seekdb 错误码:9529
-
错误原因:命名冲突。比如定义不同类型的变量,但该变量名已经在其它地方使用了。
-
解决方法:确保命名的变量名没有重复。
ERROR 9530 (HY000) :the SELF parameter can be declared only as IN or as IN OUT
-
seekdb 错误码:9530
-
错误原因:
SELF参数的修饰符必须是IN或者IN OUT,不能是其它修饰符。 -
解决方 法:修改修饰符以符合要求。
ERROR 9531 (HY000) :MAP methods must return a scalar type
-
seekdb 错误码:9531
-
错误原因:
MAP函数必须返回一个标量值,不能是一些复杂类型。 -
解决方法:修改函数返回值类型。
ERROR 9532 (HY000) :MAP methods must be declared without any parameters other than (optional) SELF
-
seekdb 错误码:9532
-
错误原因:
MAP函数的参数有且只有一个SELF参数(SELF参数可以是显式定义或者隐式定义) -
解决方法:去除多余的参数。
ERROR 9533 (HY000) :ORDER methods must return an INTEGER
-
seekdb 错误码:9533
-
错误原因:
ORDER函数必须返回一个整型数。 -
解决方法:修改函数返回值类型。
ERROR 9534 (HY000) :The parameter type in an ORDER method must be the containing object type
-
seekdb 错误码:9534
-
错误原因:
ORDER函数的参数类型必须是所属类型的类型。 -
解决方法:修改参数类型。
ERROR 9535 (HY000) :Within SQL statements, only equality comparisons of objects are allowed without a map or order function
-
seekdb 错误码:9535
-
错误原因:在 SQL 语句中,没有
MAP或者ORDER函数,只能进行等值比较。 -
解决方法:增加
MAP或ORDER函数,或者只进行等值比较。
ERROR 9537 (HY000) :The parameters to an ORDER function must have IN mode
-
seekdb 错误码:9537
-
错误原因:
ORDER函数的参数修饰符必须是IN。 -
解决方法:修改参数修饰符。
ERROR 9538 (HY000) :ORDER methods must be declared with 1 (one) parameter in addition to (optional) SELF
-
seekdb 错误码:9538
-
错误原因:
ORDER函数必须定义除了SELF参数之外的参数。 -
解决方法:定义一个所属类型的额 外的参数。
ERROR 9539 (HY000) : type '%.*s' is malformed because it is a non-REF mutually recursive type
-
seekdb 错误码:9539
-
错误原因:类型互相递归引用。
-
解决方法:解决递归引用的问题。
ERROR 9540 (HY000) :$ERROR: %.*s
-
seekdb 错误码:9540
-
错误原因:通过
$ERROR指令产生的异常,预期异常。 -
解决方法:无需处理。
ERROR 9541 (HY000) : RETURN statement in a CONSTRUCTOR cannot include an expression
-
seekdb 错误码:9541
-
错误原因:
CONSTRUCTOR函数的RETURN语句不能带任何表达式。 -
解决方法:去除
RETURN后面的表达式。
ERROR 9542 (HY000) : wrong number or types of arguments in call to '%.*s'
-
seekdb 错误码:9542
-
错误原因:子过程调用的时候,没有找到合适的函数,可能是函数名不对,也可能是参数个数不对,也可能是参数的类型不匹配。
-
解决方法:检查函数名,参数个数和参数类型。如果还有问题,再检查一下函数的访问范围。
ERROR 9543 (HY000) : '%.*s' must be a type
-
seekdb 错误码:9543
-
错误原因:声明或者表达式的类型修饰符不是一个合法的类型。例如可能没有加
%type,%rowtype。 -
解决方法:修改修饰符成为一个合法的类型。
ERROR 9544 (HY000) : too many declarations of '%.*s' match this call
-
seekdb 错误码:9544
-
错误原因:匹配多个函数调用。可能调用的函数存在多个可匹配的调用方法,没有一个可以精确匹配的函数。
-
解决方法:检查调用函数的名字是否正确及参数类型是否正确。
ERROR 9694 (42000) : Duplicate condition information item '%s'
-
seekdb 错误码:9694
-
错误原因:condition 定义中出现了重复项。
-
解决方法:condition 定义中删除重复项。
ERROR 9695 (02000) : Unhandled user-defined not found condition
-
seekdb 错误码:9695