mysql - 比 MySQL 中的 UUID 更短的非重复字母数字代码

标签 mysql cryptography

当我插入一条记录时,MySQL数据库是否可以生成仅由数字和字母组成的5或6位数字代码?如果是这样怎么办?

就像 goo.gl、bit.ly 和 jsfiddle 一样。例如:

cZ6ahF、3t5mM、xGNPN、xswUdS...

因此 UUID_SHORT() 将不起作用,因为它返回类似 23043966240817183

的值

要求:

  1. 必须是唯一的(不重复)
  2. 可以但不要求基于主键整数值
  3. 必须缩放(使用所有可能的组合后,按一个字符增长)
  4. 必须看起来随机。 (项目 1234 不能为 BCDE,而项目 1235BCDF)
  5. 必须在插入时生成。

非常感谢代码示例。

最佳答案

试试这个:

SELECT LEFT(UUID(), 6);

关于mysql - 比 MySQL 中的 UUID 更短的非重复字母数字代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17596948/

相关文章:

php - 无法将返回的 API 请求插入数据库 - php

mysql - 如何在 Hibernate 中为每个公司创建一个 customerNumber 生成器

mysql - 检查给定日期是否在夏令时或不在 Mysql 中

java - 从未压缩的客户端临时公钥和 Open SSL 静态服务器私钥生成 ECPublicKey/ECPrivateKey 期间出错

java - 您可以将 RSA 公共(public)指数设置为您选择的值吗?

mysql - 最好的方法 - vb.net 和 mysql

python - 用python编写AES-CTR解密例程

python - AES 加密 Golang 和 Python

java - 将文本转换为 BigInteger 时的 RSA 实现问题

php - 根据用户选择对 MySQL 表行进行排序的最佳方法是什么?