orcale trim 不掉空白字元分享

2021-09-01 18:16:26 字數 1428 閱讀 8147

問題背景:

乙個工商註冊號,正常的用trim能解決的問題,但是這個case,trim後和肉眼看到的就是不一樣就是多了乙個字元

分析問題:

為了能問題重現,下面模擬

創造乙個

12345

加上乙個特殊字元(假象空白)

select concat('123456',chr(9)) as xx  from dual)

1.看看長度

看到上面裡面

心裡感覺有空字元(6!

=7)

試試的效果

發現trim

不掉還是

7個長度

ok我們用dump

函式來了解oracle

的資料型別儲存方式

select

dump(xx

from

select

concat

('123456'

chr(9as

xxfrom

dual)

上面type=1

標示值得型別是

varchar2

len標示該值占用的位元組數,是

7個長度

49,50,51,52,53,54,9

49,50,51,52,53,54

對於ascii

碼是123456 而

9這個ascii

值是水平

定位符號

但是這個9是怎麼進去的呢?是ctrl+tab鍵加入的!

解決問題:

直接更新掉

後續的規劃

進行資料**輸入校驗。?

關於函式的用法

關於oracle字符集的深入研究

scanf與空白字元

scanf函式在遇到以下情況會停止乙個資料的輸入,是乙個資料哦,不是停止這個函式哦!1 空白字元 空白字元是指空格鍵,tab鍵,回車鍵 2 遇寬度結束 3 遇非法輸入 因此呢,當我們在用scanf輸入乙個字串的時候,空格已出現就停止了,比如 includeint main 執行發現 可我想要的是 h...

mysql 去除前後空白字元

在資料庫匯入excel中資料時,經常會出現一些空格或者其他特殊字元導致資料無法查詢,我們都知道 trim field 可以消除字段前後的空格,但是如何消除空白的特殊字元呢 update table set field replace replace replace field,char 9 char...

Python中刪除空白字元

去除空格 去除左右兩邊的空格使用str.strip 去除所有空格 使用str.replace 去除空白符 去除所有的空白符 使用str.splite 及join 使用正則 使用str.translate 只去除左邊的空白字元 使用str.lstrip 使用正則 只去除右邊的空白字元 使用str.rs...