您的位置: 首页 计算机类> Oracle认证> 应用技术
Oracle认证应用技术,oracle dba认证,oracle题库,oracle考试试题
公务员考试辅导课程

Oracle9i的1467错误解决方法

发布时间:11-09

页 数:4页

上一篇:细化解析:教你轻松掌握Oracle内存结构

下一篇:oms实现Oracle的数据备份方法




2 FROM T  
3 GROUP BY OWNER; 
SELECT OWNER, F_LINK(1), F_LINK(2), F_LINK(3) 

ERROR at line 1: 
ORA-01467: sort key too long 

SQL> SET SERVEROUT ON 
SQL> DECLARE 
2 V_NUMBER NUMBER; 
3 V_STR VARCHAR2(4000); 
4 V_RES NUMBER; 
5 BEGIN 
6 V_RES := DBMS_UTILITY.GET_PARAMETER_VALUE(’db_block_size’, V_NUMBER, V_STR); 
7 DBMS_OUTPUT.PUT_LINE(V_NUMBER); 
8 END; 
9 / 
8192 
PL/SQL procedure successfully completed. 
SQL> CONN TEST@GPODB 
Enter password:  
Connected. 
SQL> SELECT OWNER, F_LINK(1), F_LINK(2), F_LINK(3)  
2 FROM T  
3 GROUP BY OWNER; 
SELECT OWNER, F_LINK(1), F_LINK(2), F_LINK(3) 

ERROR at line 1: 
ORA-01467: sort key too long 

SQL> SHOW PARAMETER DB_BLOCK_SIZE 
NAME TYPE VALUE 
------------------------------------ ----------- ------------------------------ 
db_block_size integer 16384 
而这个问题在10g已经得到了解决,测试发现即使有30多个F_LINK的调用,也没有出现ORA-1467错误。 
SQL> CONN YANGTK/YANGTK@YTK已连接。 
SQL> SELECT * FROM V$VERSION; 
BANNER 
---------------------------------------------------------------- 
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Prod 
PL/SQL Release 10.2.0.1.0 - Production 
CORE 10.2.0.1.0 Production 
TNS for 32-bit Windows: Version 10.2.0.1.0 - Production 
NLSRTL Version 10.2.0.1.0 - Production 
SQL> COL F_LINK(1) FORMAT A20 
SQL> COL F_LINK(2) FORMAT A20 
SQL> COL F_LINK(3) FORMAT A20 
SQL> COL F_LINK(4) FORMAT A20 
SQL> SELECT OWNER, F_LINK(1), F_LINK(2), F_LINK(3), F_LINK(4) 
2 FROM T 
3 WHERE ROWNUM < 5 
4 GROUP BY OWNER; 
OWNER F_LINK(1) F_LINK(2) F_LINK(3) F_LINK(4) 
-------------------- -------------------- -------------------- -------------------- ------ 
SYS 1,1,1,1 2,2,2,2 3,3,3,3 4,4,4,4 
在9i上如果碰到这个问题,可以考虑使用变通的方法解决。比如使用CONNECT BY语句来代替自定义聚集函数。 

Google
 


     

考试信息

热点

课程

更新

©2005-2006 100ksw.com 版权所有 皖ICP备06013378号