2017年4月13日读书笔记

    xiaoxiao2021-04-12  32

    示例来自《31天学会CRM项目开发》

    1、  MD5是一种加密算法,可将任意长度的字符串转换成一个长度为32的字符串,它是一种不可逆的加密算法,也可以用于对比文件MD5值以此判断文件是否被篡改过。可以通过MD5加密后的字符串,进行查串,然后得到原始字符串。

    例:

    create function [dbo].[MD5](@str varchar(500))

    returns varchar(50)

    as

    begin

        declare @keyvarchar(50);

        select @key= replace(sys.fn_VarBinToHexStr(hashbytes('MD5',@str)),'0x','');

        return @key;

    end;

     

    select dbo.MD5('word');

     

    drop function dbo.MD5

    2、  递归函数:(MS SQL 最大深度为32层) 函数可以创建但是无法查看

    create function [dbo].[getjob_fullname]

    (

        @id int,

        @fullname varchar(100)

    )

    returns varchar(100) as

    begin

    declare @s varchar(100);

    declare @parentId int;

    select @s = name,@parentId =parentId from job where id =@id;

        if @s= '' begin

           set @s=@fullname;

        end

        else begin

           set @s= dbo.CONCAT(@s,'\',@fullName);

        end;

        if @parentId>0 begin

           set @s= getjob_fullname(@parentId,@s);

        end

        return @s;

    end;

     

     

     

    select *,dbo.getjob_fullname_w(1,'总经理') as fullNamefrom dbo.job

     

    drop function dob.getjob_fullname

    转载请注明原文地址: https://ju.6miu.com/read-667132.html

    最新回复(0)