首页 > 解决方案 > 为什么我需要在选择字符串中使用 CONVERT USING UTF8 和 AES_DECRYPT?

问题描述

我已经测试在 .asp 页面上使用 AES_DECRYPT 并且它只显示 ???? 当我使用这个选择查询时,而不是明文中的descypted值。

select *,AES_DECRYPT(thepassword,'myencyptkey2018' ) AS passw from personal

但是,如果我将它与使用 utf8 的转换一起使用,那么它会显示文本值。

select *,CONVERT(AES_DECRYPT(thepassword,'myencyptkey2018' ) USING utf8) AS passw from personal

我的 mySql 数据库设置为使用 charset utf8,我的 .asp 使用 charset utf8,连接字符串也是如此,据我所知,我到处都在使用 utf8。所以我的问题是,为什么我需要使用convert using utf8?为什么上面的第一个选择代码不起作用?在我的设置中哪里没有使用 utf8?如果在任何地方?谢谢。

这是您可能希望看到的变量?

在此处输入图像描述

标签: encryptionutf-8

解决方案


推荐阅读