如何在MySQL中对aes_解密进行排序[已解决]
加密和解密工作正常,pkID排序也工作正常如何在MySQL中对aes_解密进行排序[已解决],mysql,Mysql,加密和解密工作正常,pkID排序也工作正常 “按DBName ASC排序”排序错误 期望->结果 cursor.execute("SELECT pkID, CAST(AES_DECRYPT(UNHEX(DBName), '" + str(secret_key) + "') AS CHAR) AS DBName FROM table1 WHERE email = '" + test@test.com + "' ORDER BY DBName ASC
cursor.execute("SELECT pkID, CAST(AES_DECRYPT(UNHEX(DBName), '" + str(secret_key) + "') AS CHAR) AS DBName FROM table1 WHERE email = '" + test@test.com + "' ORDER BY DBName ASC LIMIT " + str(start_article) + ", " + str(NumArticle) + ";")
在未准备好的语句中使用
密钥
可能会导致语法错误,如果该密钥有任何SQL可解析的含义,则可能会导致SQL错误。我无法解释你的结果。你能举个例子吗?试试简单的orderby2
或orderby2desc
。我已经添加了捕获的数据库结果。加密和解密时不要使用HEX和UNHEX。例如)CAST(AES_DECRYPT(DBName,“+str(secret_key)+”)作为CHAR)作为DBName
aaa bbb
bbb ddd
ccc ccc
ddd aaa