我需要更新用户表中存储纯文本密码的列。它们需要进行哈希处理,我不希望用户注意到此更改。

$users = SELECT * FROM user

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


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

最佳答案

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

UPDATE user
SET password = HASH_FUNCTION(password);


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

07-25 22:58
查看更多