我有表与密码字段,这是一个纯文本。现在,我想对字段进行加密。怎么办?
发布于 2012-06-27 20:09:23
MySQL有广泛的内置加密功能,你可以在here中找到详细的概述。
你可能想看看AES_DECRYPT()和AES_ENCRYPT()。
INSERT INTO table (mycolumn) VALUES(AES_ENCRYPT('Hello!', 'encryption_key'));
SELECT AES_DECRYPT(mycolumn, 'encryption_key') FROM table;发布于 2018-01-20 03:46:08
alter table tableName modify columnNameToBeEncrypted varbinary(200);
update tableName
set columnNameToBeEncrypted = aes_encrypt(tableName.columnNameToBeEncrypted, 'secretyKey');首先将要加密的列更新为varbinary类型。这将允许保存加密值。
然后更新表以将加密值存储在适当的位置,如上所示。这将在表中保存加密值。
要查看此值,请使用以下查询:
select *, CAST(aes_decrypt(columnNameToBeEncrypted, 'secretyKey') AS CHAR(40)) from tableName;上面的SQL查询已经在MySQL上进行了测试。
发布于 2013-03-08 20:40:18
将数据库(仅数据)备份为csv文件。使用以下查询更新具有key的现有字段:
LOAD DATA INFILE 'C:/Sample.csv' INTO TABLE myTable(myname,@mypass) SET mypass=AES_ENCRYPT(@mypass,'key:test');希望它能解决你的问题。
https://stackoverflow.com/questions/11225574
复制相似问题