你是否留意到在系統割接時,我們用存儲過程來對數據進行轉換,使用Oracle substr時一般會遇到的問題有以下的四個。其中包括1.定義了一個變量A為varchar2(30);2.從一個表中使用substr(xx,1,30)為變量A賦值;xx字段的內容為中英混合;
3.報錯:提示說字符串緩沖區不足;
4.使用max(length(xx))返回值為20;
查了半天,迷惑了半天。
與另外一個搞數據庫的哥們交流了一下發現了問題所在:
1.length,Oracle substr都是計算內容的個數,不能反映字節數;
2.要想知道一個字段是否能夠插入到一個字段中,應該使用lengthB計算字節數;
3.在說一句眾所周知的:一個漢字2個字節;
4.心得:多與他人交流,不要怕丟人,三人行必有吾師哦!