加密与信息函数要点
- MD5(s) 返 32 位十六进制摘要,常用于校验文件或脱敏存储
- SHA1(s) 比 MD5 更长的摘要,碰撞更难
- VERSION() 返当前 MySQL 服务器版本号
- DATABASE() 返当前所在数据库名,USER() 返当前连接用户
- LAST_INSERT_ID() 返本次连接最后生成的自增 id
- CONNECTION_ID() 返当前连接的唯一编号,排查会话有用
加密与信息函数示例
-- 存储密码摘要而非明文
INSERT INTO account (username, pwd_hash)
VALUES ('alice', MD5('secret123'));
-- 当前连接信息一览
SELECT VERSION(), DATABASE(), USER(), CONNECTION_ID();
-- 取刚插入的主键
INSERT INTO orders (user_id, amount) VALUES (7, 99.0);
SELECT LAST_INSERT_ID();
避坑提醒:MD5/SHA1 只是摘要不是加密,不能逆向还原,且已被证明不够抗碰撞。真要做密码存储请用数据库的认证插件或应用层 bcrypt,别直接存 MD5。