This Domain(Admin5.com) is for Sale:

Oracle自定义函数——f_henry_GetStringLength

时间:2007-12-23  来源:不详  作者:迈克DB
Oracle下的Length()函数不能区分中英文,只能得到字符数而不能得到字节数,很多时候插入string到字段中时总要先进行一次检查,防止string长度超过了字段定义的长度,一般大家都是把这个检测放到应用程序中执行,用我写的这个小函数就可以实现在数据库服务器端对要插入的字段进行检测。

create or replace function f_henry_GetStringLength(pv_String in varchar2) return integer is
Result integer;
i number;
begin
Result:=0;
if length(pv_String)=0 then
return(Result);
end if;
for i in 1 .. length(pv_String) loop
if ascii(substr(pv_String,i,1))<256 then
Result:=Result 1;
else
Result:=Result 2;
end if;
end loop;
return(Result);
end f_henry_GetStringLength; 本文来自织梦

内容来自dedecms

copyright dedecms

/*************************以下是测试***************************/

dedecms.com

SQL> select length('啊$@oii发大幅') from dual; 织梦好,好织梦

LENGTH('啊$@OII发大幅')
-----------------------
9 dedecms.com

SQL> select f_henry_GetStringLength('啊$@oii发大幅') from dual;

dedecms.com

F_HENRY_GETSTRINGLENGTH('啊$@O
------------------------------
13 内容来自dedecms


看完这篇,您有何感觉呢?

文章评论

共有位Admini5网友发表了评论 查看完整内容

24小时热门信息