首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mysql随机生成值

mysql随机生成值
EN

Stack Overflow用户
提问于 2009-02-12 15:21:37
回答 5查看 3.7K关注 0票数 1

我需要生成一个随机的alpha/数字给用户,让他们进入网站。我对随机数不太了解,我知道有种子问题之类的,但我不知道它们是什么。

所以,我用这个:

选择substrING(md5(concat_ws('-‘’,md5(username_usr),MD5(zip_usr),MD5(id_usr),MD5(Created_usr),-12( users_usr )

这安全吗?我使用concat_ws是因为有时zip是空的,而其他的则不是空的。

是的,我知道这有点短,但是1。他们必须进入最后4的社交,2。这是1次使用,3。没有私人数据显示在应用程序和4。我可以使用captcha,但由于没有私人数据,这可能是过头。

谢谢

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2009-02-12 15:25:17

也许使用通用唯一标识符就足够了?只是为了保持简单?

票数 5
EN

Stack Overflow用户

发布于 2009-02-12 15:29:16

如果你需要一个随机字母数字值,你为什么要使用这么多变量?下面这样的内容应该足够完美:

代码语言:javascript
复制
md5(rand())
--Flavor: MySql
票数 4
EN

Stack Overflow用户

发布于 2009-02-12 15:44:41

这将有助于了解“随机”字符串的用途。这不是随机的--它是可重复的--而且相当容易重复。您不会以一种很容易可逆的方式公开任何敏感信息,但我猜您确实在寻找一种生成UUID (univeraslly Univeraslly Univeraslly)的方法。并非巧合,最近的MySQL版本有一个名为UUID的函数。

uuid

这也许能更好地解决你想解决的问题。如果你真的想要一个随机数(顺便说一句,它肯定会有碰撞),不要担心播种。如果你不指定一个种子,它就会以一种比固定的种子更好的方式播种。然后,将该随机数(或一系列随机数)映射到一个字符(可能通过将整数转换为char),并重复此操作,直到有足够长的字符字符串为止。但值得重申的是,随机数并不是唯一的保证数.

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/541771

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档