Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Cập nhật toàn bộ cột thành giá trị MD5 của cột khác trong MySQL

Sử dụng hàm MD5(str) trong UPDATE để tạo hash MD5 32 ký tự hex từ cột văn bản.

Ví dụ minh họa

Tạo bảng lưu mật khẩu và hash:

mysql> CREATE TABLE DemoTable1887 (Password TEXT, HashPassword TEXT);
mysql> INSERT INTO DemoTable1887(Password) VALUES('John@9089'),('90987_Carol'),('656464_David_4343');

Cập nhật HashPassword = MD5(Password):

mysql> UPDATE DemoTable1887 SET HashPassword = MD5(Password);

Kết quả:

+-------------------+----------------------------------+
| Password          | HashPassword                     |
+-------------------+----------------------------------+
| John@9089         | 7f92a7e09ab1a0cd3f36ec164f035c9a |
| 90987_Carol       | 1578fa8c47f0e53a898c8ada5c0111b4 |
| 656464_David_4343 | e5ec2bd2cb55b2252be7ca9eb546659e |
+-------------------+----------------------------------+

Cảnh báo bảo mật: MD5 không an toàn cho mật khẩu (nhanh, có rainbow table). Nên dùng SHA2(str, 256) hoặc tốt nhất là bcrypt/argon2 ở tầng ứng dụng.