여기서 varchar 값으로 해서 , varchar로 base64 암호화 처리하는 부분이 있습니다.
nvarchar 로 처리하면 서로 다른 값이 나올 수 있으므로 참고하시기 바랍니다.
** BASE64 인코딩 함수
SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO create FUNCTION [dbo].[Base64Encode] ( @plain VARCHAR(max) ) RETURNS VARCHAR(MAX) BEGIN
declare @encoded VARCHAR(max)
SELECT @encoded = CAST(N'' AS XML).value('xs:base64Binary(xs:hexBinary(sql:column("bin")))', 'VARCHAR(MAX)') FROM ( SELECT CAST(@plain AS VARBINARY(MAX)) AS bin ) AS bin_sql_server_temp;
RETURN @encoded
END
** BASE64 디코딩 함수
CREATE FUNCTION [dbo].[Base64Decode] ( @Encoded VARCHAR(max) ) RETURNS VARCHAR(MAX) BEGIN
declare @Decoded VARCHAR(max) SELECT @Decoded = CAST(CAST(N'' AS XML).value('xs:base64Binary(sql:column("bin"))', 'VARBINARY(MAX)') AS VARCHAR(MAX)) FROM ( SELECT CAST(@Encoded AS VARCHAR(MAX)) AS bin ) AS bin_sql_server_temp;