SELECT AES_ENCRYPT('fmale', '2b7e151628aed2a6abf7158809cf4f3c') FROM tmp_categorywise_salary_rpt LIMIT 1;
SELECT CAST(AES_DECRYPT('þ*Ë(|¸R°¢8Ç©', '2b7e151628aed2a6abf7158809cf4f3c') as UTF8) FROM tmp_categorywise_salary_rpt LIMIT 1;
AES_ENCRYPT 给我的加密值为 þ*Ë(|¸R°¢8Ç© 但使用 AES_DECRYPT 给我 null
期望:它应该给我返回非加密值作为女性
您正在尝试解密二进制值,手动复制它会导致丢失字符
您可以使用 base64 来打印输出,如下所示
SELECT TO_BASE64(AES_ENCRYPT('fmale', '2b7e151628aed2a6abf7158809cf4f3c')) FROM tmp_categorywise_salary_rpt LIMIT 1;
SELECT CAST(AES_DECRYPT(FROM_BASE64('/irLKHwbuBBSGrCiOAzHqQ=='), '2b7e151628aed2a6abf7158809cf4f3c') AS CHAR);
正如我在我的案例中测试过的那样
加密值:/irLKHwbuBBSGrCiOAzHqQ==
解密值:fmale