aes_encrypt函数不能与mysql程序一起使用

时间:2016-02-23 08:52:36

标签: mysql stored-procedures aes

我在查询中使用AES_ENCRYPT()

SELECT AES_ENCRYPT(a.chat_id,'AA') AS chat_id FROM vw_chat_members_name a

它按预期工作但当我尝试在程序中使用它返回null列???

步骤:

CREATE PROCEDURE aa() BEGIN SELECT AES_ENCRYPT(a.chat_id,'AA') AS chat_id FROM vw_chat_members_name a; END

1 个答案:

答案 0 :(得分:0)

内置AES函数的默认密钥长度为128位。您的示例(如图所示)仅使用16位密钥。

尝试使用128位密钥,例如'AAAAAAAAAAAAAAAA'

https://dev.mysql.com/doc/refman/5.6/en/encryption-functions.html#function_aes-encrypt