生成唯一ID的公式?

2023-12-14

我想了解一些关于在不使用 GUID 的情况下生成唯一 id 的想法。最好我希望唯一值是 int32 类型。

我正在寻找可用于数据库主键以及 url 友好的东西。

这些可以被认为是独特的吗?

  1. (int)DateTime.Now.Ticks
  2. (int)DateTime.Now * RandomNumber

还有其他想法吗?

Thanks

编辑:嗯,我正在尝试实践领域驱动设计,我的所有实体在创建时都需要有一个 ID 才能有效。理论上我可以调用数据库来获取自动递增的数字,但宁愿避开这一点,因为与数据库相关的东西正在进入域。


这取决于您需要它的独特性以及您需要为其提供 ID 的项目数量。你最好的选择可能是按顺序分配它们;如果您尝试变得奇特,您可能会遇到生日悖论(冲突的可能性比您预期的更大)或(如上面的情况 1))被迫限制您可以发行它们的速率。

对于大多数情况,您的 1) 比 2) 好一点;它是有速率限制的——每个刻度不能发出超过 1 个 ID——但不易受到生日悖论的影响。你的2)只是扔掉一些东西。与随机数进行异或运算可能会稍微好一点,但无论如何,我认为兰特不会给你带来任何东西,只是隐藏了问题并使其更难修复。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

生成唯一ID的公式? 的相关文章

  • 在 Google App Engine 中生成唯一且不透明的用户 ID

    我正在开发一个应用程序 它允许注册用户创建或上传内容 并允许匿名用户查看该内容并浏览注册用户的页面以查找该内容 这与 Flickr 等网站允许的方式非常相似人们浏览其用户的页面 为此 我需要一种方法来识别匿名 HTTP GET 请求中的用户
  • 如何生成与数据库记录匹配的唯一 URL 变量?

    我希望能够生成这样的 URL 变量 http example com 195yq http example com 195yp http example com 195yg http example com 195yf 这些变量将与 MyS
  • 基于 cocos2d-box2d 的项目中出现“'uniqueIdentifier' is deprecated”警告

    我基于cocos2d box2d创建一个新项目 两个文件中总是有4个警告 一个是CLScoreServerPost m 代码有警告如下 self addValue UIDevice currentDevice uniqueIdentifie
  • SQL Server:搜索所有表中的特定 GUID

    我发现需要清理一些数据 并且我需要找到一些特定的指南 即唯一标识符 在 SQL Server 我想出了一个存储过程SELECT从当前数据库中每个表的每个 uniqueidentifier 列中查找 如果找到 guid 则返回一个结果集 它使
  • .NET 短唯一标识符

    我需要 NET 中的唯一标识符 不能使用 GUID 因为对于这种情况来说它太长 人们是否认为所使用的算法here http jopinblog wordpress com 2009 02 04 a shorter friendlier gu
  • 获取设备的 IMEI 代码或/和 Mac 地址

    我正在实施一种唯一标识设备的方法 建筑师向我发送了以下规格 带 Wifi 3G 的设备 IMEI 代码 设备 仅 Wifi MacAddress 两者还需要制造商 型号来完成 ID 我的问题是 如何从设备获取 IMEI 如何从设备获取制造商
  • 创建了一个脚本来切换盖子关闭操作(睡眠/不执行任何操作)我可以看到它生效,但它不起作用

    我制作了一个 vbs 脚本 它基本上可以在 睡眠 和 不做任何事情 之间切换关闭盖子操作 这个想法是在我的桌面上有一个图标来保存每次控制面板 gt 电源选项 gt 更改WhatClosingTheLidDoes 顺便说一句 我使用的是 Wi
  • ASP.NET MVC 2 HiddenField 为空?

    Hi 我有一个包含 CI 属性 Guid 的 ViewClass 为了跟踪这个 CI 属性 我为其添加了一个隐藏值 如下所示 然而 这确实会呈现一个空的隐藏字段 我也尝试过 但结果相同 刚输入时 Guid 的打印方式如下 5f7a1f53
  • C# 和 SQL Server 中 int 到 guid 的不同转换

    在 C 和 SQL Server 中将 int 转换为 guid 时 我得到不同的值 在C 中我使用这个方法 public static Guid Int2Guid int value byte bytes new byte 16 BitC
  • GUID 可以多短?

    我知道标准 GUID 它们可以变得更短吗 其背后的理论是什么 Greg Dean 的答案是正确的 但为了了解 GUID 是如何生成的以及为什么不应该缩短它 我强烈建议您阅读下面的文章 新旧事物 GUID 是全局唯一的 但 GUID 的子字符
  • 打印 GUID 变量

    我有一个 GUID 变量 我想在文本文件中写入其值 GUID的定义是 typedef struct GUID size is 16 DWORD Data1 WORD Data2 WORD Data3 BYTE Data4 8 GUID 但我
  • GUID 或 GUID 的 SHA1 哈希之间发生冲突的可能性是否更大?

    之间发生碰撞的机会是否更大GUID s 128 位 或 SHA1 哈希值GUID s 160 位 我的观点是 机会较小GUID 即使少了 32 位 因为它有一些特殊的机制来确保它 几乎 因为没有保证 唯一 例如 时间戳 注意 我已经知道GU
  • 如何将 GUID 作为属性参数?

    我需要某个属性类中的 Guid 属性 如下所示 public class SomeAttribute Attribute private Guid foreignIdentificator public Guid ForeignIdenti
  • 手动更改 GUID - 这有多糟糕?

    手动更改生成的 GUID 并使用它有多糟糕 碰撞的可能性是否仍然微不足道 或者使用 GUID 进行操作是否危险 有时我们只是更改之前生成的 GUID 的某些字母并使用它 我们应该停止这样做吗 注意 这个答案错过了一些旧的格式 并且在不久的将
  • 在 10 亿次迭代中获得相同 GUID 的机会有多大?

    我正在开展一个项目 需要生成大约 10 亿个 GUID 我知道 GUID 不能保证是唯一的 但几乎始终是唯一的 如果我生成了十亿个 GUID 那么匹配的概率是多少 博客文章 GUID 是全局唯一的 但 GUID 的子字符串不是 https
  • 在 Ruby 中生成 GUID

    我有一个问题 用 GUID 很容易解决 特别是 对于密码重置工作流程 我想将 GUID 令牌发送到用户的电子邮件并让他们使用该令牌重置密码 由于 GUID 是唯一的 因此这非常安全 并且可以避免我通过电子邮件向人们发送密码 这是有风险的 我
  • WIX 自动生成 GUID *?

    假设我生成产品 ID 为 的 WIX XML 文件 另外 对于每个组件 GUID 我都使用
  • 对于返回超过1个值的SQL select,当Id为GUID时它们如何排序?

    我想知道 SQL Server 如何对查询返回的数据进行排序 并且各个表的 Id 列都是 uniqueidentifier 类型 我在创建所有 GUID 时使用 NHibernate GuidComb 并执行以下操作 Sheet sheet
  • Wix 为整个树生成单个组件 id

    我是一个几乎没有 wix 经验的人 我正在努力支持 Windows 以及我负责的组件 我正在尝试为我的产品生成的一组文件创建合并模块 这些文件存在于许多子目录中 我想知道如何为整个树中的所有文件创建一个组件 ID 我不担心小的升级 因为那是
  • 存储 MySQL GUID/UUID

    这是我能想到的将 UUID 生成的 MySQL GUID UUID 转换为二进制文件 16 的最佳方法 UNHEX REPLACE UUID 然后将其存储在 BINARY 16 中 我应该知道这样做有什么影响吗 从 MySQL 8 0 及以

随机推荐

  • 如何在 python 中编写自定义编码来清理数据?

    我知道我以前在另一份工作中做过这样的事 但我不记得我做了什么 我有一个数据库 里面充满了 varchar 和 memo 字段 这些字段是从 Office 网页以及谁知道其他地方剪切和粘贴的 这开始给我带来编码错误 由于 Python 有一个
  • IntersectionObserver 和位置:绝对

    当观察到的元素有时 IntersectionObserver 似乎不起作用position absolute并且根不是 视口 我在这里错过了什么吗 尝试删除position absolute查看预期结果 let intersectionRo
  • python 可以处理未计算的表达式参数吗?

    我想将一条语句传递给 python 函数 该语句只应在我在函数中执行其他操作后执行 默认情况下 python 计算语句 然后将其结果作为参数传递 有什么办法可以改变这种行为吗 我发现的唯一方法是将语句包装在函数中 然后传递该函数 大多数 P
  • 如何将 LinearGradient 添加到垂直 SVG 线[重复]

    这个问题在这里已经有答案了 我正在尝试为线条的笔划添加渐变 该线条在顶部淡出 但没有运气 实际上 我的工作原理是这样的 但即使在 Chrome 中 某些 SVG 尺寸也会出现浏览器问题 其中渐变会中断并且是固定的
  • MacOS X 10.6.2 上的 Perl:GDBM_File 丢失,如何安装或解决?

    当我需要 Perl 模块时 我通常使用 CPAN 效果很好 但这次不是 我想使用MARC Charset 但是这个使用GDBM File 而且我似乎无法从CPAN安装GDBM File CPAN 发现一切正常 但尝试安装它时 它开始安装完整
  • 为什么 useState 会让组件渲染两次?

    也许你们中的一些人可以让我睁开眼睛 我不明白为什么在这段代码中 https codesandbox io s use state renders twice 6r1xl组件 App 在安装并单击按钮时渲染两次 console log 被调用
  • Qt 中的自定义圆形进度条[关闭]

    Closed 这个问题需要多问focused 目前不接受答案 我可以在覆盖时在 qt 中执行循环进度条paintEvent小部件并绘制圆形进度条 但在主圆形进度条后面的第二个圆形进度条 无法像这样绘制 有困难 有人可以指导我吗 预先感谢 我
  • 如何使用R中的“bootstrap函数”计算置信区间

    我正在尝试计算R中的置信区间 由于一些特殊原因 我必须使用 bootstrap 包中的函数来计算 这意味着我不能使用 boot 包中的函数 这是我的代码 我正在做的是尝试计算 Pearson 相关系数 然后应用 Bootstrap 方法 B
  • awk 不匹配所有匹配我的所有条目

    我正在尝试制作 脚本 本质上是一个 awk 命令 来提取 c 文件中 C 代码函数的原型 以自动生成标头 h 我是 awk 的新手 所以我不了解所有细节 这是源 c 的示例 dict t dictup dict t d const char
  • Jetty:如何在 Jetty 客户端使用 SSL

    我正在使用 Jetty 开发我的客户端应用程序端 我没有在服务器部分使用 Jetty 我需要在客户端配置什么才能使用 Jetty 客户端发送 https 请求 这就是我对 HTTP 客户端所做的事情 httpClient new HttpC
  • JsonConvert.DeserializeObject 特殊字符 未终止的字符串。预期分隔符:

    由于某种原因 当我的淘汰模型中有一个特殊字符并将其转换为 json 对象时 字符串在特殊字符应该在的位置结束 并且在反序列化时出现错误 ajax url Admin Forms Convert type post contentType a
  • Retrofit 2 的定制转换器

    我必须处理动态 JSON 响应 之前 我使用类和注释如下 public class ChatResponse SerializedName status private int status SerializedName error pri
  • 在哪里删除 Swift 中 NSNotification 的观察者?

    我应该在哪里删除观察者NSNotification在斯威夫特 因为viewDidUnload and dealloc 不可用 As of iOS 9 和 OS X 10 11 你不需要移除观察者你自己 如果你不使用基于块的观察者的话 系统会
  • 为什么 IIS Express 在加载 javascript 和 CSS 时返回 HTTP 500 错误?

    我正在尝试使用 IIS Express 开发 ASP NET MVC5 解决方案进行本地调试 通常 Chrome 在尝试加载某些 JS 和 CSS 文件时会报告 HTTP500 错误 有些使用 MVC 的内置捆绑和缩小功能 有些则使用自己的
  • 错误:使用 wikixmlj 解析 xml 文件时出现 xml.sax.SAXParseException

    我正在使用解析维基百科 xml 转储wikixmlj并收到以下错误 org xml sax SAXParseException lineNumber 64243259 columnNumber 371 JAXP00010004 The ac
  • Nodejs FS 模块返回 no such file or dir 错误

    Code fs readdir commands err files gt Do something Error ENOENT 没有这样的文件或目录 scandir commands 文件夹 commands does存在 这个文件是src
  • MapKit 中的 MapTypeStyle

    我想知道是否有任何方法可以配置我们的 MapKit 地图 就像我们在 Google 地图 API 中使用 MapTypeStyle 对象一样 如果我参考Apple文档 MKMapView有一个mapType选项 它需要MKMapType常量
  • MySQL删除语句优化

    我有一些删除查询要针对一些相当大的表 100 GB 运行 并且我想尽可能地优化它们 delete from table1 where column1 lt date sub now interval 100 hour 第 1 列是datet
  • 如何使用 C# .NET 将屏幕捕获为视频?

    是否有一些库可以将屏幕捕获为压缩视频文件或可以执行此操作的某种解决方案 此代码使用 NuGet 上提供的 SharpAvi using System using System Drawing using System Drawing Ima
  • 生成唯一ID的公式?

    我想了解一些关于在不使用 GUID 的情况下生成唯一 id 的想法 最好我希望唯一值是 int32 类型 我正在寻找可用于数据库主键以及 url 友好的东西 这些可以被认为是独特的吗 int DateTime Now Ticks int D