具有相同数据哈希值的更新列

时间:2014-11-02 07:45:16

标签: mysql

我需要在用户表中更新存储了纯文本密码的colomn。他们需要进行哈希处理,我不希望用户注意到这种变化。

$users = SELECT * FROM user

foreach ($users as $user):
UPDATE user SET password = 'new value'
endforeach;

但是,如何传递所有纯文本密码并在更新前对其进行哈希处理。

1 个答案:

答案 0 :(得分:1)

SQL UPDATE语句可以读取表列的旧值并在赋值中使用它们。

UPDATE user
SET password = HASH_FUNCTION(password);

HASH_FUNCTION替换为您要使用的特定功能。