欢迎访问 mihawk 的个人空间

我的论坛主题

  • 一次to_number()出错的解决

    2008-08-29 17:23:06   /   Oracle开发

    开发人员说一个to_number()出错.如下是解决过程:--定位非法数值DECLAREn NUMBER;BEGINFOR c IN (SELECT ROWID AS rid FROM tab_0831)LOOPBEGINSELECT To_Number(c4) INTO nFROM tab_0831WHERE ROWID=c.rid;EXCEPTION WHEN OTHERS THENDbms_Output.put_line(c.rid);END;END LOOP;END;/--看看这个非法数值的具体内容SELECT c4,Dump(c4,1016) FROM tab_0831 WHERE ROWID='AAADf/AAQAAAToKAAA';500Typ=1 Len=4
  • clob字段如何实现to_single_byte

    2008-04-24 17:00:27   /   Oracle开发

    to_single_byte函数可以处理varchar2字段, 我想对一个clob字段也实现相同的功能, 就是全角转半角, 如何实现呢?to_single_byte并不支持clob输入, 如果硬要输入clob, 它会自动截取前面4000个字节, 然后对这4000个字节做处理, 返回的也是这4000个字节的处理结果, 而不是整个clob字段的处理结果.故向大家请教.
  • "cost subtracts 1"引发的执行计划错误

    2008-04-18 13:23:12   /   Oracle数据库管理

    今天在审核开发人员给我的SQL的时候发现一个SQL走错了执行计划:SELECT COUNT(*) FROM mjp.la_df a, mjp.jo d WHERE a.id = d.mjp_id/当前执行计划是nest loop + index range scan------------------------------------------------------------------------------| Id| Operation|Name| Rows| Bytes | Cost|------------------------------------------------------------------------------|0 | SELECT STATEMENT||1 |26 |19 |
  • 烦人的"Recost for ORDER BY"

    2008-03-20 11:42:44   /   Oracle数据库管理

    起因是一个SQL走错了索引SELECT ROWID AS ridFROM tab_1 sWHERE s.c_id = :1ORDER BY s.gmt_r DESC执行计划如下------------------------------------------------------------------------------------------| Id| Operation|Name| Rows| Bytes | Cost|------------------------------------------------------------------------------------------|0 | SELECT STATEMENT||858 | 25740 |138K||*1 |T
Open Toolbar