/****************************
Convert string to hexadecimal
Author: not idle
QQ: 75492895
Email: appleak46@yahoo.com.cn
****************************/
-- Create a function (suiyunonghen (not idle ))
Create Function varchartohex (@ STR varchar (400 ))
Returns varchar (800)
As
Begin
Declare @ I int, @ ASI int, @ mod int, @ res varchar (800), @ Len int, @ CRES varchar (4), @ tempstr varbinary (400)
Select @ I = 1, @ res = '', @ Len = datalength (@ Str), @ tempstr = convert (varbinary, @ Str)
While @ I <= @ Len
Begin
Select @ ASI = substring (@ tempstr, 1,1), @ CRES =''
While @ ASI <> 0
Begin
Select @ mod = @ ASI % 16,
@ CRES = case when (@ mod> 9) then Char (ASCII ('A') + @ Mods-10) + @ CRES else cast (@ MoD as varchar (4 )) + @ CRES end,
@ ASI = @ ASI/16
End
Select @ res = @ res + @ CRES, @ tempstr = substring (@ tempstr, 2, @ len-1), @ I = @ I + 1
End
Return @ res
End
Go
-- Test example
Select DBO. varchartohex ('leaf ')
-- Running result
/*
D2b6d7d3
*/