Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/301.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
Python Mysql AES_DECRYPT()函数在Django原始查询中不起作用_Python_Mysql_Django_Encryption - Fatal编程技术网

Python Mysql AES_DECRYPT()函数在Django原始查询中不起作用

Python Mysql AES_DECRYPT()函数在Django原始查询中不起作用,python,mysql,django,encryption,Python,Mysql,Django,Encryption,当我在Django的原始查询中使用MySql函数AES_DECRYPT()时,该函数不起作用。我的代码如下: sql = "select AES_DECRYPT(myfield, mykey) as ssn from mytable " people_list = Peopletable.objects.raw(sql) for p in people_list: print p.ssn 它没有打印出来,这意味着AES_DECRYPT()不起作用。但是如果我在python端运行查询,那

当我在Django的原始查询中使用MySql函数AES_DECRYPT()时,该函数不起作用。我的代码如下:

sql = "select AES_DECRYPT(myfield, mykey) as ssn from mytable "
people_list = Peopletable.objects.raw(sql)
for p in people_list:
    print p.ssn

它没有打印出来,这意味着AES_DECRYPT()不起作用。但是如果我在python端运行查询,那么我就得到了我需要的东西。我尝试了其他mysql函数,比如SUBSTR(),它们工作得非常好。似乎只有这个AES_DECRYPT()在Django中不起作用。有人能帮忙吗?非常感谢

这并不意味着AES_解密(myfield,mykey)的结果为None(null),就意味着它不工作

如果检测到无效数据或不正确的填充,则返回NULL。但是,如果输入数据或密钥无效,AES_DECRYPT()可能返回非空值(可能是垃圾)


尝试直接在数据库上运行相同的查询,可能会得到相同的结果。

我不是Django prog,但
Peopletable.objects.raw(sql)
确实执行了查询吗?是的,它执行了。我可以得到所有其他字段的值,除了AES_DECRYPT()函数中的值。您是否使用MYSQL AES_encrypt对该列进行了加密?