MySQL的加密函數是一種用于在數據庫中存儲加密數據的方法。這些函數提供了多種類型的加密,包括散列函數,對稱加密和非對稱加密,用于保護用戶的敏感信息。
CREATE TABLE users (
id INT(11) NOT NULL AUTO_INCREMENT,
email VARCHAR(255) NOT NULL,
password VARCHAR(255) NOT NULL,
PRIMARY KEY (id)
);
INSERT INTO users (email, password)
VALUES ('user@example.com', SHA2('password', 256));
//這個例子引用了SHA2加密算法。
SELECT * FROM users WHERE email='user@example.com' AND password=SHA2('password', 256);
在這個例子中,我們創建了一個名為"users"的表,該表包含一個自增長的ID column,一個email column和一個password column。我們在插入數據時使用SHA2加密算法,密碼被散列成一個固定長度的字符串并存儲在數據庫中。
查詢時,我們可以使用相同的加密算法來比較輸入密碼和數據庫中存儲的密碼是否匹配。
除了SHA2外,MySQL還提供了其他許多加密函數,例如AES_ENCRYPT和RSA_ENCRYPT,可根據需求進行選擇。