Oracle9i的1467错误有什么解决方法?
Oracle9i的1467错误有什么解决方法?
在使用自定义聚集函数时出现了一个ORA-1467错误。 根据Oracle文档上的描述,1467错误是由于排序的键值超过了DB_BLOCK_SIZE。 但是出现错误的SQL似乎并不满足这个条件。下面简单构造这个错误: SQL> CREATE OR REPLACE TYPE T_LINK AS OBJECT ( 2 STR VARCHAR2(30000), 3 STATIC FUNCTION ODCIAGGREGATEINITIALIZE(SCTX IN OUT T_LINK) RETURN NUMBER, 4 MEMBER FUNCTION ODCIAGGREGATEITERATE(SELF IN OUT T_LINK, VALUE IN VARCHAR2) RETURN NUMBER, 5 MEMBER FUNCTION ODCIAGGREGATETERMINATE(SELF IN T_LINK, RETURNVALUE OUT VARCHAR2, FLAGS IN NUMBER) RETURN NUMBER, 6 MEMBER FUNCTION ODCIAGGREGATEMERGE(SELF IN OUT T_LINK, CTX2 IN T_LINK) RETURN NUMBER 7 ) 8 / Type created。
SQL> CREATE OR REPLACE TYPE BODY T_LINK IS 2 STATIC FUNCTION ODCIAGGREGATEINITIALIZE(SCTX IN OUT T_LINK) RETURN NUMBER IS 3 BEGIN 4 SCTX := T_LINK(NULL); 5 RETURN ODCICONST。
SUCCESS; 6 END; 7 8 MEMBER FUNCTION ODCIAGGREGATEITERATE(SELF IN OUT T_LINK, VALUE IN VARCHAR2) RETURN NUMBER IS 9 BEGIN 10 SELF。
STR := SELF。STR || VALUE || ’,’; 11 RETURN ODCICONST。SUCCESS; 12 END; 13 14 MEMBER FUNCTION ODCIAGGREGATETERMINATE(SELF IN T_LINK, RETURNVALUE OUT VARCHAR2, FLAGS IN NUMBER) RETURN NUMBER IS 15 BEGIN 16 RETURNVALUE := SUBSTR(SELF。
STR, 1, LENGTH(SELF。STR) - 1); 17 RETURN ODCICONST。SUCCESS; 18 END; 19 20 MEMBER FUNCTION ODCIAGGREGATEMERGE(SELF IN OUT T_LINK, CTX2 IN T_LINK) RETURN NUMBER IS 21 BEGIN 22 NULL; 23 RETURN ODCICONST。
SUCCESS; 24 END; 25 END; 26 / Type body created。
SQL> CREATE OR REPLACE FUNCTION F_LINK(P_STR VARCHAR2) RETURN VARCHAR2 2 AGGREGATE USING T_LINK; 3 / Function created。
答:托福听力错误1:慢热 分析:做题时精力不够集中,不够紧张,导致题目已经开始自己还没反应过来,丢分! 解决方法提示: 1、提前看题目,将要听的题目先看...详情>>