这是我在项目中使用的用户定义函数:
CREATE FUNCTION [dbo].[Encrypt]
(
@Password nvarchar(4000)
)
RETURNS varbinary(4000)
AS
BEGIN
SELECT @Password = CONVERT(nvarchar(4000),@Password);
RETURN HashBytes('SHA1', @Password);
END
GO
我需要实体框架,所以,有可能找到一种方法在SQL Server 2012 Express中的存储过程中转换这个吗?
答案 0 :(得分:1)
程序定义
CREATE PROCEDURE [dbo].[usp_Encrypt]
@Password nvarchar(4000),
@HashedPass varbinary(4000) OUTPUT
AS
BEGIN
SET NOCOUNT ON;
SET @HashedPass = HashBytes('SHA1',CONVERT(nvarchar(4000),@Password));
END
执行程序
DECLARE @RtnHashedPass varbinary(4000);
EXECUTE [dbo].[usp_Encrypt]
@Password = 'myPassword'
@HashedPass = @RtnHashedPass OUTPUT
SELECT @RtnHashedPass --<-- Do what ever you want to do with this value