Oracle substr運(yùn)行時(shí)會(huì)遇到哪些問(wèn)題?
你是否留意到在系統(tǒng)割接時(shí),我們用存儲(chǔ)過(guò)程來(lái)對(duì)數(shù)據(jù)進(jìn)行轉(zhuǎn)換,使用Oracle substr時(shí)一般會(huì)遇到的問(wèn)題有以下的四個(gè)。其中包括1.定義了一個(gè)變量A為varchar2(30);2.從一個(gè)表中使用substr(xx,1,30)為變量A賦值;xx字段的內(nèi)容為中英混合;
3.報(bào)錯(cuò):提示說(shuō)字符串緩沖區(qū)不足;
4.使用max(length(xx))返回值為20;
查了半天,迷惑了半天。
與另外一個(gè)搞數(shù)據(jù)庫(kù)的哥們交流了一下發(fā)現(xiàn)了問(wèn)題所在:
1.length,Oracle substr都是計(jì)算內(nèi)容的個(gè)數(shù),不能反映字節(jié)數(shù);
2.要想知道一個(gè)字段是否能夠插入到一個(gè)字段中,應(yīng)該使用lengthB計(jì)算字節(jié)數(shù);
3.在說(shuō)一句眾所周知的:一個(gè)漢字2個(gè)字節(jié);
4.心得:多與他人交流,不要怕丟人,三人行必有吾師哦!
以上的相關(guān)內(nèi)容就是對(duì)Oracle substr遇到的問(wèn)題的介紹,望你能有所收獲。
【編輯推薦】