HashBytes ( ‘<algorithm>‘, { @input | ‘input‘ } )
<algorithm>::= MD2 | MD4 | MD5 | SHA | SHA1
- ‘<algorithm>‘
-
标识用于对输入执行哈希操作的哈希算法。这是必选参数,无默认值。需要使用单引号。
- @input
-
指定包含要对其执行哈希操作的数据的变量。@input 的数据类型为 varchar、nvarchar 或varbinary。
- ‘input‘
-
指定要执行哈希操作的字符串。
允许的输入值限制为 8000 个字节。输出符合算法标准:MD2、MD4 和 MD5 为 128 位(即 16 个字节);SHA 和 SHA1 为 160 位(即 20 个字节)。
以下示例返回变量 @HashThis 中存储的 nvarchar 数据的 SHA1 哈希值。
DECLARE @HashThis nvarchar(4000);
SELECT @HashThis = CONVERT(nvarchar(4000),‘dslfdkjLK85kldhnv$n000#knf‘);
SELECT HashBytes(‘SHA1‘, @HashThis);
GO