Gri*_*der 92 t-sql sql-server sql-server-2008
有没有办法生成类型为varchar(32)的MD5哈希字符串,而不使用fn_varbintohexstr
SUBSTRING(master.dbo.fn_varbintohexstr(HashBytes('MD5', 'email@dot.com')), 3, 32)
Run Code Online (Sandbox Code Playgroud)
所以它可以在带有SCHEMABINDING的视图中使用
Kon*_*kus 179
CONVERT(VARCHAR(32), HashBytes('MD5', 'email@dot.com'), 2)
Run Code Online (Sandbox Code Playgroud)
SQL*_*ace 62
SELECT HashBytes('MD5', 'email@dot.com')
Run Code Online (Sandbox Code Playgroud)
这将给你0xF53BD08920E5D25809DF2563EF9C52B6
-
SELECT CONVERT(NVARCHAR(32),HashBytes('MD5', 'email@dot.com'),2)
Run Code Online (Sandbox Code Playgroud)
这将给你F53BD08920E5D25809DF2563EF9C52B6
小智 20
解:
SUBSTRING(sys.fn_sqlvarbasetostr(HASHBYTES('MD5','your text')),3,32)
Run Code Online (Sandbox Code Playgroud)
jma*_*nes 14
没有其他答案对我有用.请注意,如果传入硬编码字符串而不是从结果集中的列提供,则SQL Server将提供不同的结果.以下是让我在SQL Server和MySql之间实现完美匹配的神奇之处
select LOWER(CONVERT(VARCHAR(32), HashBytes('MD5', CONVERT(varchar, EmailAddress)), 2)) from ...
Run Code Online (Sandbox Code Playgroud)
sla*_*dan 13
对于最多8000个字符的数据,请使用:
CONVERT(VARCHAR(32), HashBytes('MD5', 'email@dot.com'), 2)
Run Code Online (Sandbox Code Playgroud)
对于二进制数据(不限于8000字节),请使用:
CONVERT(VARCHAR(32), master.sys.fn_repl_hash_binary(@binary_data), 2)
Run Code Online (Sandbox Code Playgroud)
尝试这个:
select SUBSTRING(sys.fn_sqlvarbasetostr(HASHBYTES('MD5', 'email@dot.com' )),3,32)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
215108 次 |
| 最近记录: |