SQL Server中的EncryptByPassPhrase和Decryptbypassphrase会舍入值,如图所示。我们该如何解决这个问题?我们正在使用SQL Server 2012
DECLARE @EncryptedValue varbinary(8000);
DECLARE @MyFloat float;
SET @MyFloat = 1204787;
SELECT @EncryptedValue = EncryptByPassPhrase('x12#', CAST(@MyFloat AS varchar(8000)));
SELECT @MyFloat as 'before', @EncryptedValue,
CAST(CAST(decryptbypassphrase('x12#', @EncryptedValue) as varchar(8000)) as float) as 'after';