是否可以为我的sqlite数据库生成一个随机且唯一的5位ID?

2024-10-02 12:23:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我想为db表中的每个条目生成一个ID。它看起来像这样:nov45833。在

前三个字符对于我的表名是唯一的,nov代表小说,com代表漫画等等。接下来的5位数字是一个随机生成的数字。如果我想删除条目,我只需调用条目的存储ID(例如../delete/nov45833)即可。我也希望ID是唯一的(这样我就不会删除错误的条目)。在

我最初的计划是在填写表单时单击一个按钮,它将生成一个随机数并在指定的表单字段中显示值。然后我会按计划填写表格。下面是一个例子:Codepen

我需要在服务器端还是用JavaScript?我在研究Python,尤其是烧瓶。如果你有任何问题或认为这是愚蠢的,请告诉我。谢谢您。我很缺乏经验。在


Tags: 目的comiddb错误条目代表数字
1条回答
网友
1楼 · 发布于 2024-10-02 12:23:56

随机抽取5位数字可以重复使用同一个id两次(小的数字空间)

您可以执行以下解决方案之一:

  1. 使用更大的id空间,您可以使用标准的uuid,它看起来像12345678-1234-5678-1234-567812345678。您可以看到如何使用它How to create a GUID/UUID in Python

  2. 您可以按一定的顺序提供id,例如每次都是<;last_given_id>;+1,这样可以保证在达到最大值之前不会重复使用id。

  3. 您还可以使用@Satish Sharma suggestion,每次检查id是否已经在数据库中。然而,我不认为这是一个好的解决办法。在我看来,每次插入都会带来不必要的巨大开销。

相关问题 更多 >

    热门问题