问题描述
希望这不是一个已经回答的问题,但是我希望能够在解密的同时选择所有内容,就像像下面这样select * from
:
$sql = $conn->prepare("SELECT AES_DECRYPT(*,UNHEX('...");
$sql->execute(array("test2","test2"));
但这似乎不起作用,会产生语法错误。还有其他办法吗?
解决方法
我希望能够在解密的同时选择所有内容,就像进行
select * from
您不能那样做。 AES_DECRYPT()
和姐妹函数AES_ENCRYPT()
对字符串进行操作,而不对记录进行操作。
您确实需要对要解密的每一列重复该函数调用:
select
aes_decrypt(col1,...) as decrypted_col1,aes_decrypt(col2,...) as decrypted_col2,...
from mytable