oracle数据库使用游标实现大写数字转换成小写数字-创新互联
项目遇到需求,需要将大写数字转换成小写。代码如下:
目前创新互联已为超过千家的企业提供了网站建设、域名、网络空间、网站托管、服务器托管、企业网站设计、会同网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。declare t_zl varchar2(100); t_ts varchar2(100); t_l number; hh varchar2(100); xx varchar2(100); type TIArray is table of varchar2(100); type TCArray is table of varchar2(100); A TIArray; B TCArray; cursor c is select zl,tstybm from fc_h_qsdc2; begin A:=TIArray('四十七','四十六','四十五','四十四','四十三','四十二','四十一','三十九','三十八','三十七', '三十六','三十五','三十四','三十三','三十二','三十一','二十九','二十八','二十七','二十六','二十五','二十四','二十三', '二十二','二十一','四十','三十','二十','十九','十八','十七','十六','十五','十四','十三','十二','十一','十','九','八','七','六','五','四','三','二','一'); B:=TCArray('47','46','45','44','43','42','41','39','38','37','36','35','34','33','32','31','29','28','27','26','25','24','23','22','21','40','30','20','19','18','17','16','15','14','13','12','11','10','9' ,'8','7','6','5','4','3','2','1'); open c; loop fetch c into t_zl,t_ts; exit when c%notfound; for i in 1..47 loop select instr(t_zl,A(i)) into xx from dual; if (xx>0 and length(A(i))=3) then hh:=substr(t_zl,1,xx-1)||B(i)||substr(t_zl,xx+3); elsif(xx>0 and length(A(i))=2) then hh:=substr(t_zl,1,xx-1)||B(i)||substr(t_zl,xx+2); elsif(xx>0 and length(A(i))=1) then hh:=substr(t_zl,1,xx-1)||B(i)||substr(t_zl,xx+1); else hh:=t_zl; end if; t_zl:=hh; end loop; update fc_h_qsdc2 set zl=t_zl where tstybm=t_ts; end loop; close c; end;注:实现关键点,利用(type type_name is table of{column_type|variable_name%type|table_name.column_name%type|table_name%rowtype}[not null] index by{pls_integer|binary_tnteger|varchar2(v_size)})该类型和数组类似,利用键值查找对应的值。
2016-05-11
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
新闻标题:oracle数据库使用游标实现大写数字转换成小写数字-创新互联
网站URL:http://scyanting.com/article/csdeph.html