已知函数返回值,求函数传入值? sql
create function [dbo].[MD5](@value varchar(300))
returns varchar(32)
as
begin
return UPPER(right(sys.fn_VarBinToHexStr(hashbytes('MD5',@value)),32))
end
-- 调用此函数返回 516420F993E2BD8BBC2C189269B80B60
-- 请问 @value 传入的时候是什么???
------解决方案--------------------这个涉及对 "MD5" 解密,应该是做不到吧
------解决方案--------------------呵呵,想法很好
但是数学上来说,并不是所有的函数都有反函数,你遇到的正好是这类函数,否则着函数怎么用来加密,人人可以破解了
------解决方案--------------------这个函数是对传入参数进行md5加密,并且返回加密后的值,以字符串形式呈现
该函数为标量函数,所以可以用exec执行
exec [dbo].[MD5]('123456')
或者
select [dbo].[MD5]('123456')
select [dbo].[MD5]('列名') from tb
------解决方案--------------------1/5 = 0 2/5 = 0 你能知道输入的是1还是2吗?或者是3还是4