oracle插入資料單引號轉義 替換

2021-10-07 17:05:43 字數 872 閱讀 8790

postgresql資料需要同步到oracle,由於gp資料庫查出來的資料有單引號導致無法插入資料到oracle.

gp資料庫查出來的資料是這樣的:

mother』s day 在insert到oracle中會被解析為 'mother』s day』這樣,所以報錯無法插入。

將包含單引號的字段替換轉義成oracle可以轉化的字元

select

to_char

(coalesce (publish_time,

now())

,'yyyy-mm-dd hh24:mi:ss'

) as row_lastupdate_time,

replace ( module_key,

chr(39)

,'''||'

''''

'') as kkk --

**重點在這裡*

kkk是被替換之後的結果,轉譯成mother』||』』's day 就可以插入資料庫中了

oracle replace 函式是用另外乙個值來替代串中的某個值。

replace ( module_key,chr(39),』』』||』』』』』』』)

chr(39) 代表單引號 』

『』』||』』』』』』』 轉義之後是這樣的 『||』』』

oracle單引號轉義是左1右3,或者左3右1

oracle單引號轉義字元

create or replace procedure p employee hire authid current user isvn ctn number 2 stmt sql varchar2 500 begin select count into vn ctn from user all t...

Oracle中的單引號(轉義)

oracle單引號轉義 set serveropput on declare vv name varchar2 200 vv cnt number 10 0 vv sql varchar2 2000 begin for usr in select str sql from t test1 loop ...

SQL 轉義字元 單引號

c 的轉義字元是 sql 的轉義字元是 單引號 例 select from tbl where uyear 06 請注意其中紅色背景的單引號,它即表示轉義字元,如果我們省略,則整個語句會出錯,轉義字元不會輸出,上例中 uyear 的實際條件值為 06,而不是 06 為什麼不能省略呢,假如我們省略,上...