sql 实现md5加密的函数

-- =============================================
-- Author:        felix
-- Create date: 2011-11-24
-- Description:  实现MD5加密算法,返回对字符串的加密结果串
-- =============================================
ALTER FUNCTION [dbo].[MD5] 
(
    -- 源字符串
    @src varchar(255),
    -- 加密类型(16/32)
    @type int = 32
)
RETURNS varchar(255)
WITH EXECUTE AS CALLER
AS
BEGIN
    -- 存放md5加密串(ox)
    DECLARE @smd5 varchar(34)

    -- 加密字符串
    SELECT @smd5 = sys.fn_VarBinToHexStr(hashbytes('MD5', @src));

    IF @type=16
        SELECT @smd5 = SUBSTRING(@smd5,11,16)   --16位
    ELSE
        SELECT @smd5 = SUBSTRING(@smd5,3,32)    --32位

    -- 返回加密串
    RETURN @smd5

END


 

你可能感兴趣的:(sql,server,加密,sql,function,date,算法)