[20130628]sql語句顯示不全的問題.txt

lfree發表於2013-06-28
[20130628]sql語句顯示不全的問題.txt

今天在最佳化一條sql語句的時候遇到一個怪問題,sql語句顯示有問題,仔細檢視才想起來以前看itpub的一本書上講過,
老楊遇到的問題,語句裡面僅僅含有0d(十六進位制)編碼,自己為了加深印象,做一個測試例子:

SQL> @ver
BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production

$ rlsql -s scott/xxxxx
set head off
spool cc.txt
select 'select sysdate '||chr(13)||' from dual;' from dual ;
 from dual;ate

spool off
quit


$ xxd -c 16 cc.txt
0000000: 7365 6c65 6374 2073 7973 6461 7465 200d  select sysdate .
0000010: 2066 726f 6d20 6475 616c 3b20 2020 2020   from dual;


SQL> @cc.txt
SYSDATE
-------------------
2013-06-28 15:33:13

SQL> @dpc '' ''
PLAN_TABLE_OUTPUT
-----------------------------------------------------------------------------------
SQL_ID  ck9ngpn99pabj, child number 0
-------------------------------------
 from dualdate

Plan hash value: 1388734953

-------------------------------------------------------
| Id  | Operation        | Name | E-Rows | Cost (%CPU)|
-------------------------------------------------------
|   0 | SELECT STATEMENT |      |        |     2 (100)|
|   1 |  FAST DUAL       |      |      1 |     2   (0)|
-------------------------------------------------------

Note
-----
   - Warning: basic plan statistics not available. These are only collected when:
       * hint 'gather_plan_statistics' is used for the statement or
       * parameter 'statistics_level' is set to 'ALL', at session or system level

19 rows selected.

--可以發現sql語句顯示" from dualdate".

SQL> select sql_fulltext,sql_text,sql_id from v$sql where sql_id='ck9ngpn99pabj';
SQL_FULLTEXT                   SQL_TEXT                       SQL_ID
------------------------------ ------------------------------ -------------
 from dual     ck9ngpn99pabje

--很明顯顯示有問題。主要問題是0d是回車,缺少0a表示換行。在一些toad工具就沒有這個問題。

--實際上如果執行如下:
SQL> select '111111111111'||chr(13)||'www' from dual ;
'111111111111'||
----------------
www111111111

--顯示'www111111111'就很容易明白。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/267265/viewspace-765055/,如需轉載,請註明出處,否則將追究法律責任。

相關文章