Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/solr/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在MySQL中对aes_解密进行排序[已解决]_Mysql - Fatal编程技术网

如何在MySQL中对aes_解密进行排序[已解决]

如何在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

加密和解密工作正常,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 LIMIT " + str(start_article) + ", " + str(NumArticle) + ";")
    
  • “ASC”和“DESC”显示相同的结果
  • 如果不使用“AS DBName”->对加密列表进行排序
  • 如果不使用“CAST(AS CHAR)”->二进制输出(b'aaa')
  • 添加-MySQL工作台的捕获数据库结果

    “订单由pName1 asc(desc)”显示相同的结果“rid asc”


    在未准备好的语句中使用
    密钥
    可能会导致语法错误,如果该密钥有任何SQL可解析的含义,则可能会导致SQL错误。我无法解释你的结果。你能举个例子吗?试试简单的
    orderby2
    orderby2desc
    。我已经添加了捕获的数据库结果。加密和解密时不要使用HEX和UNHEX。例如)CAST(AES_DECRYPT(DBName,“+str(secret_key)+”)作为CHAR)作为DBName
    aaa       bbb
    bbb       ddd  
    ccc       ccc 
    ddd       aaa