我的专栏 lib_question 中的数据是使用 AES_ENCRYPT 加密的。现在我想从表中搜索记录,其中该列类似于用户输入的特定条目。我尝试了这个,但它不起作用:
select id_question
from question
where lib_question like CONCAT('%',AES_ENCRYPT('contribuer', HEX('AVtr34ENMG')),'%');
Run Code Online (Sandbox Code Playgroud)
我记得通过应用程序将“contribuer”一词输入到与 lib_question 列对应的字段中。
那么如何做出LIKE语句呢?
AES_ENCRYPT 将在输入字符串周围添加填充(https://dev.mysql.com/doc/refman/5.6/en/encryption-functions.html#function_aes-encrypt),这意味着您的比较将永远不会匹配加密字符串。
您是否尝试过比较解密的值?这样应该比较靠谱。
select id_question
from question
where AES_DECRYPT(lib_question, HEX('AVtr34ENMG')) like '%contribuer%';
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1662 次 |
| 最近记录: |