ORA-01555 caused by SQL
来源:互联网 发布:矩阵分析英文版 pdf 编辑:程序博客网 时间:2024/04/29 01:43
alert报错如下:
Thu Dec 31 14:36:38 2015
ORA-01555 caused by SQL statement below (SQL ID: 51hmywh9jz8qg, Query Duration=34461 sec, SCN: 0x0000.26f53fdc):整理后:
SQL> select owner,OBJECT_NAME from dba_objects where object_name like 'AGENT_WORKING_RATE_TEMP2';OWNER OBJECT_NAME------------------------------ ------------------------------STAT_HOLLYCRMAPP AGENT_WORKING_RATE_TEMP2STAT_TEST AGENT_WORKING_RATE_TEMP2SQL> SQL> SQL> SQL> explain plan for INSERT INTO STAT_HOLLYCRMAPP.AGENT_WORKING_RATE_TEMP2 (ROW_DATE, LOGID, ACDRING_TIME, ACDIVR_TIME, ACDTALK_TIME, CALLTALK_SUM) SELECT SUBSTR(T.ON_TIME_C, 1, 13) ROW_DATE, TRIM(T.ANSLOGIN) LOGID, SUM(T.RINGTIME) ACDRING_TIME, SUM(T.DURATION - T.QUEUETIME - T.RINGTIME - T.TALKTIME) ACDIVR_TIME, SUM(T.TALKTIME) ACDTALK_TIME, SUM(CASE WHEN INSTR(T.DISPOSITION, '2') > 0 AND T.DIRECTION = '0' THEN 1 ELSE 0 END) CALLTALK_SUM FROM STAT_HOLLYCRMAPP.CALL_REC_DETAIL T WHERE 1 = 1 AND T.ANSLOGIN IS NOT NULL AND SUBSTR(T.ON_TIME_C, 1, 13) = :B1 GROUP BY SUBSTR(T.ON_TIME_C, 1, 13), TRIM(T.ANSLOGIN) ;Explained.SQL> set linesize 1000SQL> set pagesize 9999SQL> select *from table(dbms_xplan.display());PLAN_TABLE_OUTPUT------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Plan hash value: 2426201691---------------------------------------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | ---------------------------------------------------------------------------------------------------------- | 0 | INSERT STATEMENT | | 31 | 1364 | 2824 (1)| 00:00:34 | | 1 | LOAD TABLE CONVENTIONAL | AGENT_WORKING_RATE_TEMP2 | | | | | | 2 | HASH GROUP BY | | 31 | 1364 | 2824 (1)| 00:00:34 | |* 3 | TABLE ACCESS BY INDEX ROWID| CALL_REC_DETAIL | 31 | 1364 | 2823 (1)| 00:00:34 | |* 4 | INDEX FULL SCAN | IDX_ANSLOGIN_REC | 3058 | | 82 (0)| 00:00:01 | ---------------------------------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- 3 - filter(SUBSTR("T"."ON_TIME_C",1,13)=:B1) 4 - filter("T"."ANSLOGIN" IS NOT NULL)17 rows selected.SQL>
SQL> explain plan for SELECT SUBSTR(T.ON_TIME_C, 1, 13) ROW_DATE, TRIM(T.ANSLOGIN) LOGID, SUM(T.RINGTIME) ACDRING_TIME, SUM(T.DURATION - T.QUEUETIME - T.RINGTIME - T.TALKTIME) ACDIVR_TIME, SUM(T.TALKTIME) ACDTALK_TIME, SUM(CASE WHEN INSTR(T.DISPOSITION, '2') > 0 AND T.DIRECTION = '0' THEN 1 ELSE 0 END) CALLTALK_SUM FROM STAT_HOLLYCRMAPP.CALL_REC_DETAIL T WHERE 1 = 1 AND T.ANSLOGIN IS NOT NULL AND SUBSTR(T.ON_TIME_C, 1, 13) = :B1 GROUP BY SUBSTR(T.ON_TIME_C, 1, 13), TRIM(T.ANSLOGIN) ;Explained.SQL> set linesize 1000 SQL> set pagesize 9999 SQL> SQL> select * from table (dbms_xplan.display());PLAN_TABLE_OUTPUT------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------Plan hash value: 538663538----------------------------------------------------------------------------------------------| Id | Operation | Name | Rows | Bytes |TempSpc| Cost (%CPU)| Time |----------------------------------------------------------------------------------------------| 0 | SELECT STATEMENT | | 49658 |2182K| | 60409 (1)| 00:12:05 || 1 | HASH GROUP BY | | 49658 |2182K|3320K| 60409 (1)| 00:12:05 ||* 2 | TABLE ACCESS FULL| CALL_REC_DETAIL | 49658 |2182K| | 59842 (1)| 00:11:59 |----------------------------------------------------------------------------------------------Predicate Information (identified by operation id):--------------------------------------------------- 2 - filter("T"."ANSLOGIN" IS NOT NULL AND SUBSTR("T"."ON_TIME_C",1,13)=:B1)14 rows selected.SQL>SQL> alter session set events '1555 trace name errorstack forever, level 3';
Session altered.
问题再现确实有点难:
SQL> alter session set events '1555 trace name errorstack forever, level 3';Session altered.SQL> show parameter eventsNAME TYPE VALUE------------------------------------ ----------- ------------------------------xml_db_events string enableSQL> SELECT SUBSTR(T.ON_TIME_C, 1, 13) ROW_DATE, 2 TRIM(T.ANSLOGIN) LOGID, SUM(T.RINGTIME) ACDRING_TIME, SUM(T.DURATION - T.QUEUETIME - T.RINGTIME - T.TALKTIME) ACDIVR_TIME, SUM(T.TALKTIME) ACDTALK_TIME, SUM(CASE WHEN INSTR(T.DISPOSITION, '2') > 0 AND T.DIRECTION = '0' THEN 1 ELSE 0 END) CALLTALK_SUM FROM STAT_HOLLYCRMAPP.CALL_REC_DETAIL T WHERE 1 = 1 AND T.ANSLOGIN IS NOT NULL AND SUBSTR(T.ON_TIME_C, 1, 13) = :B1 GROUP BY SUBSTR(T.ON_TIME_C, 1, 13), TRIM(T.ANSLOGIN) ; 3 4 5 6 7 8 9 10 11 12 13 14 15 16 SP2-0552: Bind variable "B1" not declared.SQL> SELECT SUBSTR(T.ON_TIME_C, 1, 13) ROW_DATE, 2 TRIM(T.ANSLOGIN) LOGID, SUM(T.RINGTIME) ACDRING_TIME, SUM(T.DURATION - T.QUEUETIME - T.RINGTIME - T.TALKTIME) ACDIVR_TIME, SUM(T.TALKTIME) ACDTALK_TIME, SUM(CASE WHEN INSTR(T.DISPOSITION, '2') > 0 AND T.DIRECTION = '0' THEN 1 ELSE 0 END) CALLTALK_SUM FROM STAT_HOLLYCRMAPP.CALL_REC_DETAIL T WHERE 1 = 1 AND T.ANSLOGIN IS NOT NULL AND SUBSTR(T.ON_TIME_C, 1, 13) = 3 GROUP BY SUBSTR(T.ON_TIME_C, 1, 13), TRIM(T.ANSLOGIN) ; 3 4 5 6 7 8 9 10 11 12 13 14 15 16 AND SUBSTR(T.ON_TIME_C, 1, 13) = 3 *ERROR at line 15:ORA-01722: invalid numberSQL> select ON_TIME_C from STAT_HOLLYCRMAPP.CALL_REC_DETAIL WHERE ROWNUM <10;ON_TIME_C--------------------2015-01-28 10:59:032015-01-28 10:59:142015-01-28 10:58:532015-01-28 11:00:182015-01-28 10:53:592015-01-28 11:00:242015-01-28 11:01:462015-01-28 10:56:172015-01-28 10:58:229 rows selected.SQL> SELECT SUBSTR(T.ON_TIME_C, 1, 13) ROW_DATE, 2 TRIM(T.ANSLOGIN) LOGID, SUM(T.RINGTIME) ACDRING_TIME, SUM(T.DURATION - T.QUEUETIME - T.RINGTIME - T.TALKTIME) ACDIVR_TIME, SUM(T.TALKTIME) ACDTALK_TIME, SUM(CASE WHEN INSTR(T.DISPOSITION, '2') > 0 AND T.DIRECTION = '0' THEN 1 ELSE 0 END) CALLTALK_SUM FROM STAT_HOLLYCRMAPP.CALL_REC_DETAIL T WHERE 1 = 1 AND T.ANSLOGIN IS NOT NULL AND SUBSTR(T.ON_TIME_C, 1, 13) = 3 4 5 6 7 8 9 10 11 12 13 14 15 '2015-01-28 11:00:24' 16 GROUP BY SUBSTR(T.ON_TIME_C, 1, 13), TRIM(T.ANSLOGIN) ;no rows selectedSQL>
0 0
- ORA-01555 caused by SQL
- ORA-01555 caused by SQL statement below
- Caused by:java.sql.BatchUpdateException:ORA-02291
- Caused by:java.sql.SQLException:ORA-00923
- ORA-01555 caused by SQL statement below SQL ID: 9ggx5zvjkgd1t
- ORA-01555 caused by SQL statement below (Query Duration=38751 sec, SCN: 0x0000.fe5b584a)
- 解决Caused by: java.sql.SQLException: ORA-00933: SQL command not properly ended
- 归档日志满以后引起的错误 Caused by: java.sql.SQLException: ORA-00257:
- 有关hibernate一对多编程遇到的问题:Caused by:java.sql.BatchUpdateException: ORA-02291
- Oracle ADF 异常:Caused By: java.sql.SQLSyntaxErrorException: ORA-01722: 无效数字
- Caused by:java.sql.SQLException:ORA-01008:并非所有变量都已绑定
- Caused by: java.sql.SQLException: ORA-01795: 列表中的最大表达式数为 1000解决方案
- 异常——Caused by: java.sql.SQLException: ORA-00911: 无效字符
- Caused by: java.sql.SQLException: ORA-01861: 文字与格式字符串不匹配
- ODI-1228: Caused By: java.sql.SQLSyntaxErrorException: ORA-00911: 无效字符
- Caused by: java.sql.BatchUpdateException:
- 关于 Hibernte 中*.hb.xml 引起的 “Caused by: java.sql.SQLException: ORA-02289: 序列不存在 ”问题
- errorORA-28001 the password has expired .或者Caused by: java.sql.SQLException: ORA-28001: 口令已经失效
- Android Provision(开机向导setupwizard程序)
- Android 自定义Dialog对话框详解
- Android系统之路(初识MTK) ------ Bluetooth bug resolved on Google/关于谷歌蓝牙bug的解决
- RadioButton与CheckBox混合使用
- Google推荐的图片加载库Glide于Picasso比较
- ORA-01555 caused by SQL
- QT注册自定义类型
- rop入门(二)
- 【PHP】PHP 7.0.2 发布
- mybatis连接SQLServer
- ImageLoader(转载请注明本文出自xiaanming的博客(http://blog.csdn.net/xiaanming/article/details/26810303))
- 移动端 css初始化
- 阿里巴巴开源项目: 基于mysql数据库binlog的增量订阅&消费
- rop学习(三)