a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 87|回复: 0

[考试辅导] Oracle技术:1467错误解决方法

[复制链接]
发表于 2012-8-4 14:06:19 | 显示全部楼层 |阅读模式
在使用自界说聚积函数时呈现了一个ORA-1467错误。  
8 c( r0 s8 C, t/ K' z4 @* C3 k( W7 r  c
. f5 T6 y% A  R- A$ ~- ^
按照Oracle文档上的描述,1467错误是因为排序的键值跨越了DB_BLOCK_SIZE。  
8 {+ r* c, i/ f  u& ~, i4 q可是呈现错误的SQL似乎并不知足这个前提。下面简单机关这个错误:  
" l* _9 E2 c; \( w" GSQL> CREATE OR REPLACE TYPE T_LINK AS OBJECT (   
: I7 j& y2 f5 k8 ]2 STR VARCHAR2(30000),   
% K" I4 p) g# o- e& Y) ~& y3 STATIC FUNCTION ODCIAGGREGATEINITIALIZE(SCTX IN OUT T_LINK) RETURN NUMBER,   
% j1 d, R! ^  n4 e4 MEMBER FUNCTION ODCIAGGREGATEITERATE(SELF IN OUT T_LINK, VALUE IN VARCHAR2) RETURN NUMBER,   4 s5 n: O% l# n2 v: u/ l
5 MEMBER FUNCTION ODCIAGGREGATETERMINATE(SELF IN T_LINK, RETURNVALUE OUT VARCHAR2, FLAGS IN NUMBER) RETURN NUMBER,   $ y( l' g' U2 f  W# m) ?0 ]$ [
6 MEMBER FUNCTION ODCIAGGREGATEMERGE(SELF IN OUT T_LINK, CTX2 IN T_LINK) RETURN NUMBER   1 p( X( f: g+ g5 i8 a+ E
7 )  - ?9 E, t6 U" ^, ~, j
8 /  
* G. q7 a9 W  W( b3 D0 QType created.  7 W2 m" A4 c0 I) R1 L0 X
SQL> CREATE OR REPLACE TYPE BODY T_LINK IS   ) x) u: X% }# Y. }6 w
2 STATIC FUNCTION ODCIAGGREGATEINITIALIZE(SCTX IN OUT T_LINK) RETURN NUMBER IS   4 d. q+ M5 L5 a
3 BEGIN   
9 A! ]2 t% L& z% {0 J4 SCTX := T_LINK(NULL);   $ ^1 j* d6 A) x! `% s
5 RETURN ODCICONST.SUCCESS;   8 K% x# W/ \% ^0 |- V1 M
6 END;   1 e2 O$ {7 g+ y% H9 w3 N
7   
# ~4 w+ f3 J: H; a8 ]2 ^8 MEMBER FUNCTION ODCIAGGREGATEITERATE(SELF IN OUT T_LINK, VALUE IN VARCHAR2) RETURN NUMBER IS   
( C9 r" u+ V- L9 y1 v9 BEGIN   
3 _7 A8 I, [" L) N5 C5 w8 q+ I+ }10 SELF.STR := SELF.STR || VALUE || ’,’;   
3 X9 t6 z3 P! ]4 s# _' c11 RETURN ODCICONST.SUCCESS;   ; ]- P! J7 g( r9 F. E% s3 a, m
12 END;   
1 h% ]; g- _8 c( ]! L  Q: K13   
9 T: s6 G; |" d4 e5 j14 MEMBER FUNCTION ODCIAGGREGATETERMINATE(SELF IN T_LINK, RETURNVALUE OUT VARCHAR2, FLAGS IN NUMBER) RETURN NUMBER IS   9 f9 F$ R" K2 C) S
15 BEGIN   1 A0 P/ t" F# y+ r* p
16 RETURNVALUE := SUBSTR(SELF.STR, 1, LENGTH(SELF.STR) - 1);   ( L* s8 b/ v0 s: X& _* {
17 RETURN ODCICONST.SUCCESS;  # a, u& s' c' z' I+ v0 _, P
18 END;   
; d- c: r  N/ B. X2 }19   
6 y2 Z" x! d/ o9 [# `8 ^20 MEMBER FUNCTION ODCIAGGREGATEMERGE(SELF IN OUT T_LINK, CTX2 IN T_LINK) RETURN NUMBER IS   
: X5 w1 P% g, p7 m6 L! p; G' _7 b21 BEGIN   & `1 _5 ]0 Y$ U5 U& V, P
22 NULL;    [5 g6 Y, i( Z1 `
23 RETURN ODCICONST.SUCCESS;  首页 1 2 3
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-5-6 00:24 , Processed in 0.198950 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表