2015-04-17 75 views
0

我有一個字符串「我愛麥當勞漢堡,這是最好的。」插入數據庫時​​在數據中包含單引號

我想將它插入列中,將它們分成15個字符的字符串。

因此,我必須插入3行

I love McDonald 
's burgers. it' 
s the best. 

但是,如果我用'添加「一個額外的」存在,這將影響我的15個字符的斷裂計算字符串中的結果作爲字符串,

是否有其他方式可以包含'不必再使用一個'來逃避它?

請幫忙。

回答

0

你並不需要添加一個額外的「如果你打破串入一個變量:

DECLARE 
    mcdonald_string VARCHAR2(50) := 'I love McDonald''s burgers. it''s the best.'; 
BEGIN 
    WHILE LENGTH(mcdonald_string) > 0 LOOP 
    INSERT INTO your_table(your_field) VALUES (SUBSTR(mcdonald_string,1,15)); 
    mcdonald_string := SUBSTR(mcdonald_string,16); 
    END LOOP; 

    COMMIT; 
END; 
0

內的複雜的文字加倍引號, 特別是一個代表SQL聲明,可能會很棘手。您還可以使用以下表示法爲字面量定義您自己的分隔符 字符。您可以選擇未在字符串中出現 一個字符,然後不需要逃避字面內的其他單引號 引號:

-- q'!...!' notation allows the of use single quotes 
-- inside the literal 
string_var := q'!I'm a string, you're a string.!'; 

http://docs.oracle.com/cd/B19306_01/appdev.102/b14261/fundamentals.htm#sthref339

相關問題