问题标签 [uniqueidentifier]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
148804 浏览

c# - C# guid 和 SQL 唯一标识符

我想创建一个 GUID 并将其存储在数据库中。

在 C# 中,可以使用 Guid.NewGuid() 创建 guid。这将创建一个 128 位整数。SQL Server 有一个 uniqueidentifier 列,其中包含一个巨大的十六进制数。

有没有一种好的/首选的方法可以让 C# 和 SQL Server guid 很好地协同工作?(即使用 Guid.New() 创建一个 guid,然后使用 nvarchar 或其他字段将其存储在数据库中......或者通过其他方式创建 SQL Server 期望的一些十六进制数字)

0 投票
4 回答
1092 浏览

sql-server - 在主键/聚集索引中使用 GUID

我相当精通 SQL 服务器的性能,但我总是不得不反驳 GUID 应该用作集群主键的默认类型的想法。

假设该表每天的插入量相当低(5000 +/- 行/天),我们会遇到什么样的性能问题?页面拆分将如何影响我们的搜索性能?我应该多久重新索引一次(或者我应该碎片整理)?我应该将填充因子设置为(100、90、80 等)吗?

如果我每天插入 1,000,000 行会怎样?

我为所有问题预先道歉,但我希望得到一些备份,因为我没有使用 GUID 作为 PK 的默认值。然而,我完全愿意让 StackOverflow 用户群的大量知识改变我的想法。

0 投票
3 回答
713 浏览

mysql - unique Id: 是一个唯一的用户名 + currentMilliseconds 对于唯一的 Id 来说已经足够好了

我需要存储用户的帖子。

他们的用户名是独一无二的,我敢肯定他们不能在同一毫秒内发帖。

然后他们的帖子的 URL 将包含 /Username/12345678890/title-of-the-post

我不能使用 Auto_Inc 编号,因为我在数据库中不知道它。 希望他们知道数字或能够猜测。

这是否足以在数据库中存储足够独特?


如果是这种情况,将唯一 ID 存储在数据库(MySQL)中的最佳方法是

PK 与 URL 无关。

例如

我应该索引一列吗?

--编辑--

我忘了提到我不知道用户知道有多少帖子或能够为他们猜出一个数字。

所以我认为以毫秒为单位的 currentTime 是不可猜测的。

Mabye 现在这个值应该被加密但仍然是 URL-SAFE

0 投票
1 回答
1590 浏览

c# - 在 LINQ 中从 Guid 设置 UniqueIdentifier,空引用异常

我正在尝试根据我的会员表(asp.net 会员资格)中的唯一标识符在我的客户表中设置一个唯一标识符。

但是,这样做时我得到一个空引用异常。这是代码。

它在最后一行崩溃。

我在数据库的 Customer 表和 LINQ to SQL 模型中尝试了不同的设置,但我一直得到这个。

有谁知道为什么?

谢谢

0 投票
5 回答
60548 浏览

sql - GUID 的 SCOPE_IDENTITY() ?

谁能告诉我SCOPE_IDENTITY()在 SQL Server 中使用 GUID 作为主键时是否存在等效的情况?

我不想先创建 GUID 并保存为变量,因为我们使用顺序 GUID 作为主键。

关于检索最后插入的 GUID 主键的最佳方法的任何想法?

0 投票
6 回答
417 浏览

design-patterns - 提供代表 512 个字符文件路径的唯一 32 位 int 的公式/模式?

是否有一个通用公式可以为 512 个字符的文件路径提供唯一值,假设每个字符一个 32 位字节,并可能限制名称中使用的字符?

我知道,如果您只使用大写字母,则组合将远远超过 32 位 int,但是如何将标识字段与某个库一起使用,以便在给定文件路径的情况下,一旦分配的数字始终相同?这是一个想法,但我正在寻找一些标准公式,或者至少有人在现实世界中成功实施了它。

顺便说一句,我使用的是 C#,但任何语言都可以作为示例,或链接到网站。

谢谢

0 投票
2 回答
241 浏览

actionscript-3 - as3 中的自定义事件类型标识符是否需要唯一?

假设我有两个扩展类Event

他们都使用相同的字符串声明事件类型可以"click"吗?

或者事件类型标识符是否需要在整个应用程序中是唯一的?

0 投票
5 回答
17271 浏览

c# - 如何确定实际物理网卡的 MAC 地址——不是由 VPN(.NET C#)创建的虚拟网络接口

背景

我正在尝试从计算机中获取唯一标识符,并希望每次都能可靠地返回相同的 MAC 地址。相信我,我有使用 MAC 地址的理由,并且阅读了许多关于替代唯一 ID 方法的帖子(是的,我考虑过他们是否没有任何网卡)。

问题

问题出在 .NET 中,无论如何我都看不到特定的 NetworkInterface 是否是来自诸如“Nortel IPSECSHM 适配器 - 数据包调度程序微型端口”之类的物理硬件网卡,当您连接到某些 VPN 或 WiFi 网络时,会添加这些网卡。

我知道如何使用与此类似的代码来获取 Mac 地址:

可以理解的是,没有 100% 的方法来确保我会得到一个内部网卡,但我想选择 MAC 地址来返回给定机器最不可能改变的 MAC 地址。独立于诸如 - 它是否连接到 wifi ......通过某种类型的系绳连接......或者他们安装了一些新的 vpn 软件来添加新界面。

考虑的策略

1) 选择第一个界面为“Up”。这在我的笔记本电脑上失败了,因为“数据包微型端口”始终处于启动状态。此外,如果我将手机连接到笔记本电脑,这也会显示为第一张卡。

2)选择最合适的类型......这失败了b / c基本上所有东西都显示为“以太网”,包括WiFi适配器和我的iPHone网络共享互联网连接。

3) 选择具有 IP 地址的 NIC。失败有几个原因:1)网卡可能没有连接到 LAN 2)有多个网卡可能有 IP 地址。

4)只需发送所有MAC地址...问题是列表会根据安装的软件而变化,并且很难比较。

5)选择速度最快的mac地址。我想这可能是我最好的选择。我认为可以肯定地说,最快的界面通常是最永久的。

或者,可能有其他方法可以检测 .NET 中的物理卡,或者如果您可以推荐一种可以提供不同信息的 API 调用,我会考虑调用其他 API 调用。

还有其他想法吗?

在这里演示的是当我将我的 iphone 拴在上面时我的示例代码的输出:

未连接 Iphone:

0 投票
3 回答
1869 浏览

c# - 对象的 C# 随机代码字段生成器

我有一个具有以下属性的对象


GID
ID
代码
名称

有些客户不想输入代码,所以最初的计划是将 ID 放在代码中,但是 orm 的基本对象不同,所以我就像搞砸了......

我的计划是将####-#### 完全随机的值放入代码中,我怎样才能生成类似 Windows 7 串行生成器类型的东西,但在这种情况下你会做什么?

0 投票
4 回答
4217 浏览

c# - SQL Server 2005 UniqueIdentifier 和 C# 数据类型

在 C# 中选择什么数据类型来表示 SQL Server UniqueIdentifier 类型的最佳数据类型是什么?我打算使用 GUID,但我看到有人使用 varChars。

谢谢