精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>编程开发>>● ASP>>数据库>>好久没来了,送个函数代码给大家吧!:)

主题:好久没来了,送个函数代码给大家吧!:)
发信人: yahao(亚豪)
整理人: qcrsoft(2002-02-04 02:10:16), 站内信件
/*
'##############################################################################
'## Copyright (C) 1998-2002 Yahao Software Studio
'##
'## 自定义函数: 比较字符串是否相等
'##
'## 调用语法:dbo.STRCOMP(@string1,@string2,@casesensitive)
'##
'## 输入参数:
'## @String1:字符串1,最大长度255个字符
'## @String2:字符串2,最大长度255个字符
'## @CaseSensitive:是否大小写敏感,1:使用大小写,0:忽略大小写
'##
'## 返回:如字符串1与字符串2完全相同则返回0,否则返回1
'## 返回值类型:tinyint
'##
'## Code by Yahao
'##############################################################################
'## FileDate: 2002-01-31
*/

CREATE FUNCTION STRCOMP
   (@String1 varchar(255), @String2 varchar(255),@CaseSensitive tinyint)
RETURNS tinyint
AS
BEGIN
DECLARE @strlen1 tinyint,@strlen2 tinyint
DECLARE @c1 varchar(1),@c2 varchar(1)
DECLARE @i tinyint

SET @strlen1 = LEN(@String1)
SET @strlen2 = LEN(@String2)

-- 如果长度不相等,则返回假 --
If @strlen1 <> @strlen2
BEGIN
RETURN (1)
END

SET @i = 0
IF @CaseSensitive = 1
-- 区分大小写 --
BEGIN
WHILE (@i <= @strlen1)
BEGIN
SET @c1 = SUBSTRING(@String1,@i,1)
SET @c2 = SUBSTRING(@String2,@i,1)
IF ASCII(@c1) <> ASCII(@c2)
BEGIN
RETURN (1)
BREAK
END
SET @i = @i + 1
END
END
ELSE
-- 不区分大小写 --
BEGIN
WHILE (@i <= @strlen1)
BEGIN
SET @c1 = SUBSTRING(@String1,@i,1)
SET @c2 = SUBSTRING(@String2,@i,1)
IF @c1 <> @c2
BEGIN
RETURN (1)
BREAK
END
SET @i = @i + 1
END
END
IF @i = @strlen1
RETURN (0)
RETURN ( 1 )
END




----
绿色签名 - 欢迎光临网易广州虚拟社区ASP版

[关闭][返回]