<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Decode360's Blog

    業精于勤而荒于嬉 QQ:150355677 MSN:decode360@hotmail.com

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 ::  :: 管理 ::
      397 隨筆 :: 33 文章 :: 29 評論 :: 0 Trackbacks
    Oracle的轉義字符
    ?
    ??? 對于Oracle的轉義字符,對然了解,但是一直不是很明白。而且在SQLPlus下的ESCAPE還和函數ESCAPE不是一個意思,更加容易搞混,所以專門來學習一下。首先可以通過幾個簡單的例子來了解一下這個函數在SQL中的用法。
    ?
    SQL> create table t_char(a varchar2(20));
    SQL> insert into t_char values('a_b');
    SQL> insert into t_char values('acb');
    SQL> insert into t_char values('a%b');
    SQL> insert into t_char values('a''b');
    SQL> insert into t_char values('a/b');
    SQL> insert into t_char values('a\b');
    SQL> insert into t_char values('%');
    SQL> insert into t_char values('_');
    SQL> insert into t_char values('a');
    SQL> commit;
    ?
    SQL> select * from t_char;
    A
    --------------------
    a_b
    acb
    a%b
    a'b
    a/b
    a\b
    %
    _
    a
    ?
    SQL> select * from t_char where a like 'a_b';
    A
    --------------------
    a_b
    acb
    a%b
    a'b
    a/b
    a\b
    ?
    SQL> select * from t_char where a like 'a\_b' escape '\';
    A
    --------------------
    a_b
    ?
    --可見要查詢含有通配字符的字符串,必須要使用escape函數
    ?
    ?
    SQL> select * from t_char where a like 'a\'b' escape '\';
    ERROR:
    ORA-01756: quoted string not properly terminated

    SQL> select * from t_char where a like 'a''b' escape '\';
    A
    --------------------
    a'b
    ?
    --但是字符'還是需要用兩個''來代替字符串中的單引號
    ?
    ?
    SQL> select * from t_char where a like 'ax_b' escape 'x';
    A
    --------------------
    a_b
    ?
    SQL> select * from t_char where a like 'a''_b' escape '''';
    A
    --------------------
    a_b
    ?
    SQL> select * from t_char where a like 'a_%b' escape '_';
    A
    --------------------
    a%b
    ?
    --可以用其他字符,甚至是“'”、“_”、“%”來用作轉義字符,但是一般都使用\,以免發生邏輯錯誤
    ?
    ?
    SQL> select * from t_char where a like 'a\/b' escape '\';
    select * from t_char where a like 'a\/b' escape '\'
    ????????????????????????????????? *
    ERROR at line 1:
    ORA-01424: missing or illegal character following the escape character

    SQL> select * from t_char where a like 'a_/b' escape '_';
    select * from t_char where a like 'a_/b' escape '_'
    ????????????????????????????????? *
    ERROR at line 1:
    ORA-01424: missing or illegal character following the escape character
    ?
    SQL> select * from t_char where a like 'a//b' escape '/';
    A
    --------------------
    a/b
    ?
    SQL> select * from t_char where a like 'a/\b' escape '/';
    select * from t_char where a like 'a/\b' escape '/'
    ????????????????????????????????? *
    ERROR at line 1:
    ORA-01424: missing or illegal character following the escape character
    ?
    SQL> select * from t_char where a like 'a\\b' escape '\';
    A
    --------------------
    a\b

    ?
    --要搜索"/"或者"\"則必須使用與之相同的符號作為轉義字符,否則無效
    ?
    ?
    --基本上的使用方法就是這些了,最后再強調一下:這里的escape函數,和sqlplus中的escape環境參數·毫·無·關·系·
    ?
    SQL> show escape
    escape OFF

    ?
    posted on 2009-03-27 20:51 decode360 閱讀(1873) 評論(0)  編輯  收藏 所屬分類: 05.SQL
    主站蜘蛛池模板: 亚洲成人精品久久| 老汉精品免费AV在线播放| 亚洲av无码成人影院一区| 亚洲欧洲免费无码| 日本永久免费a∨在线视频| 亚洲av无码精品网站| 久久精品免费一区二区喷潮| 亚洲色图在线播放| 成人免费无码大片a毛片| 亚洲视频在线不卡| 日本免费一区二区三区 | 免费人成无码大片在线观看| 中文成人久久久久影院免费观看| 2048亚洲精品国产| 色噜噜的亚洲男人的天堂| 妞干网免费视频观看| 中文字幕无码亚洲欧洲日韩| 麻豆最新国产剧情AV原创免费| 黄色一级视频免费观看| 国产精品亚洲玖玖玖在线观看| 7x7x7x免费在线观看| 一级女性全黄久久生活片免费| 亚洲人成无码网WWW| 日本阿v免费费视频完整版| 久久高潮一级毛片免费| 亚洲丶国产丶欧美一区二区三区| 午夜影视日本亚洲欧洲精品一区 | 亚洲AV蜜桃永久无码精品| 亚洲一区免费在线观看| 亚洲国产av一区二区三区丶| 成年女人毛片免费播放人| 久久99青青精品免费观看| 亚洲人成777在线播放| 亚洲综合色自拍一区| 国产成人精品免费视频软件| 一级毛片在播放免费| 亚洲精品无码高潮喷水A片软| 亚洲国产成人久久精品动漫| 亚洲美女高清一区二区三区| 久久最新免费视频| 四虎精品免费永久免费视频|