创建条目时,在列中生成随机且唯一的ID

如何在表格中创建条目,其中一列 unique_id < / code>自动填充随机生成的整数? 这可以直接从mysql完成吗? 我已经看到你可以自动用时间戳等填充它,所以是否可以用随机生成的整数自动填充它? </ p>
</ div>

展开原文

原文

How can I make it so when an entry is created in a table, one of the columns unique_id automatically gets filled with a randomly generated integer? Can this be done straight from mysql? I've seen that you can automatically fill it with a timestamp and such, so is it possible to automatically fill it with a randomly generated integer?

dsm42026
dsm42026 stackoverflow.com/questions/1467581/...
6 年多之前 回复

4个回答



如果您需要唯一编号用于ID目的。 您可以使列自动递增。 请记住,如果你要使用它,你需要使它成为唯一或主键。 我认为这是最简单的方法。 您将得到一个连续的增量。</ p>
</ div>

展开原文

原文

IF you need a unique number for id purpose. you may make your column auto-incremented. Remember this that if you are going with this you need to make it either unique or primary key. I think this is the easiest way. You will get a contiguous increment.

douwen1313
douwen1313 是的,这就是为什么我在这里提到它将是连续递增的数字。
6 年多之前 回复
dongtan9518
dongtan9518 自动增量将创建唯一的数字校正,但OP需要随机唯一编号
6 年多之前 回复



你可以试试这个</ code> </ p>

  SELECT FLOOR(  10000 + RAND()* 89999)AS my_random_number 
FROM mytable
WHERE“my_random_number”NOT IN(SELECT id FROM mytable)
LIMIT 1
</ code> </ pre>

或者只是这个< 代码> SELECT FLOOR(RAND()* 1000000); </ code> </ p>
</ div>

展开原文

原文

you can try this

SELECT FLOOR(10000 + RAND() * 89999) AS my_random_number
FROM mytable
WHERE "my_random_number" NOT IN (SELECT id FROM mytable)
LIMIT 1

OR SImply this SELECT FLOOR(RAND() * 1000000);

doushao1948
doushao1948 我不知道你要求我给它的mysql cmd的php
6 年多之前 回复
dongxi4335
dongxi4335 我试过但它不起作用,如何将random_id列的DEFAULT值设置为创建唯一随机数的函数
6 年多之前 回复
dongzz4545
dongzz4545 呀,这会让你更好地检查语法!
6 年多之前 回复
dongyan5141
dongyan5141 所以我不能使用像这样的ALTER TABLE文件ALTER random_id SET DEFAULT FLOOR(RAND()* 1000000)
6 年多之前 回复
douqiao1997
douqiao1997 你可以用这个做一个你需要的链接
6 年多之前 回复
dongyongmin5711
dongyongmin5711 我不是每次都这样做吗? 或者在sql中运行此查询会使每次创建条目时列都自动生成一个随机数?
6 年多之前 回复



使用RAND()和concat日期和时间,这样你就可以有一个唯一的数字.. </ p>
</ DIV>

展开原文

原文

use RAND() and concat date and time with it so you can have a unique number..



使用UUID函数,UUID被设计为在空间和时间上全局唯一的数字。
http://dev.mysql.com/doc/refman/5.0/en/mcellaneous -functions.html #function_uuid </ p>
</ div>

展开原文

原文

Use UUID function,A UUID is designed as a number that is globally unique in space and time. http://dev.mysql.com/doc/refman/5.0/en/miscellaneous-functions.html#function_uuid

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐