【发布时间】:2017-04-06 06:56:36
【问题描述】:
我正在练习使用 phpMyAdmin 在 MySQL 中创建密码哈希表。我尝试输入的 SQL 代码是:
编辑:使用我正在使用的新代码:
INSERT INTO `user` (`username`, `salt`, `passwordhash`)
VALUES ('username', 'a1b2c3d4e5f6g', SHA2(CONCAT('password', 'a1b2c3d4e5f6g'), 256)));
在 SHA2 之后,一切都是错误的,第一个错误是“无法识别的关键字。(靠近 CONCAT)”。其余的都说“无法识别的令牌”,然后是任何字符串,所以看起来所有这些问题都是由 CONCAT 引起的。有没有其他方法可以连接字符串?
【问题讨论】:
-
你不应该使用 SHA1 password hashes 或 MD5 password hashes 而你真的应该使用 PHP 的built-in functions 来处理密码安全。确保你 don't escape passwords 或在散列之前对它们使用任何其他清理机制。这样做会更改密码并导致不必要的额外编码。
-
您使用的是哪个 phpMyAdmin 和 MySQL 版本?一旦我更正了额外的右括号,这对我使用当前的 phpMyAdmin 版本(4.6.5.2)来说很好。
-
另外,您可以使用“插入”选项卡,其中包含可能对您有所帮助的 MySQL 函数下拉列表。
标签: sql phpmyadmin mariadb concat