- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有多个数据库,每个数据库都有一个审计表。其中一个数据库是一个“通用”数据库,其中包含国家、州等表格。
这个公共(public)数据库的表在其他数据库中作为 View 被引用。
目前我的审计表有一个标识列。为了列出审计记录,我使用 UNION 将普通数据库中的审计表和普通数据库中的审计表合并。
但是审计表中的标识列可能是相同的。
如果我在审计表中添加一个 uniqueidentifier 列并将其用作我的唯一 ID,该列在数据库中是否是唯一的?
最佳答案
如果您使用uniqueidentifier
生成的内置方法(如newId()
或C# 的Guid.NewGuid()
),是的,它将在数据库、服务器、国家等方面都是独一无二的。
事实上,这是 GUID 的一大用途 - 复制。如果您在两个数据库中有相同的 GUID,则可以保证它是故意放在那里的。
但是,请注意 GUID 确实有其缺点 - 它们可能会使您的索引性能更差(或至少需要更多维护),并且它们通常更大。
此外,GUID 并非完全随机 - 有几种不同的 GUID 生成算法,其中一些算法本身是唯一的(例如,使用 MAC 地址作为 GUID 的一部分 - 默认情况下 MAC 是唯一的,尽管您可以手动覆盖它们)-因此每个物理服务器的一部分是唯一的,并且机器确保它不会对两个 GUID 使用相同的时间戳。还有顺序 GUID (newSequentialId()
),这有助于避免索引碎片(当然对聚集索引非常有用)——请注意,它们取决于计算机的 MAC 地址,它们是可预测的,所以如果你公开 GUID,并且你依赖它们是“ secret 的”,你可能不想使用它们。一些 GUID 算法比其他算法更可预测。
关于sql - uniqueidentifier 跨数据库唯一吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28404964/
假设您有一个提供一些在线类(class)的付费网站。并且您要确保一个人不只是购买访问权限,然后将用户名和密码提供给他的所有 friend ,这样他们就可以免费参加类(class)。 你会怎么做? 到目
我有多个数据库,每个数据库都有一个审计表。其中一个数据库是一个“通用”数据库,其中包含国家、州等表格。 这个公共(public)数据库的表在其他数据库中作为 View 被引用。 目前我的审计表有一个标
我正在编写一个 Entity Framework LINQ 查询,其中我想将字符串解析为 UNIQUEIDENTIFIER(又名 GUID),作为 WHERE 子句的一部分: public IEnum
我刚开始使用 SQL Server,但在向具有 uniqueidentifier 类型列的表添加值时遇到了一些麻烦。 表格包括: ID (uniqueidentifier), CODE (nchar(
我有多个数据库,每个数据库都有一个审计表。其中一个数据库是一个“通用”数据库,其中包含国家、州等表格。 这个公共(public)数据库的表在其他数据库中作为 View 被引用。 目前我的审计表有一个标
我有两个表Backup 和Requests。 下面是两个表的脚本 备份 CREATE TABLE UserBackup( FileName varchar(70) NOT NUL
当我运行我的最终查询时,我收到了上述错误。我已经正确设置了我的表格格式,如果我运行我的 @ProdTotal单独查询我得到正确的数据,如果我运行最终 @Sales_Prod查询不带 pt.Produc
为了调查 Hibernate 的行为是否不同于 NHibernate 的 for a particular usage scenario , 我开始为基于 NHibernate 的应用程序的相关部分编
我想根据他们在我网站上的电子邮件 ID 来注册用户,假设用户和他们的 emailid 字符串之间存在一对一的关系。但是gmail doesn't recongnize . s in email ids
在我的数据库 SQL Express 2014 中, 我有名为 Membership 的表,其中列名为 UserId。列类型为 uniqueidentifier。 我想将 UserId 列的内容转换为
我有一个动态查询,我想在其中连接 uniqueidentifier,但 + 和 & 运算符不支持此操作,有没有办法可以将 uniqueidentifier 连接到动态字符串。在这方面的任何示例或任何帮
我正在尝试比较 WHERE 子句中的列 col1 和变量 @myvar。两者通常都包含 GUID,但也可能包含 NULL 值。我认为我可以通过使用 WHERE ISNULL(col1, '')=ISN
我创建了一个数据库,其中使用 uniqueidentifier 作为主键。我正在尝试运行一个最终看起来像这样的参数化查询。 (insert into someTable (uniqueID) Valu
我在 Web 和移动平台(iOS 和 Android)上有一个应用程序,我试图从用户登录的设备中识别出来,并出于安全目的保留它们的列表。是否有任何设备的通用 ID,例如用于计算机的 IMEI(手机),
在我的 C# 项目中,我需要向 UniqueIdentifier 列插入一些空值。 对于字段 city Guid,state Guid 字段我应该能够插入空值如果没有可用的值(唯一标识符)。我收到以下
这个问题在这里已经有了答案: UIDevice uniqueIdentifier deprecated - What to do now? (32 个回答) 已关闭10 年前。
我经常被告知要忽略这个编译器警告,因为在发布下一个 iOS 主要版本之前它不会成为问题。好吧……如果我的 iPhone 应用程序没有有一天突然停止工作就好了! 奇怪的是我在 OpenGL 2.0 上使
关闭。这个问题需要details or clarity .它目前不接受答案。 想改进这个问题吗? 通过 editing this post 添加细节并澄清问题. 关闭 9 年前。 Improve
我正在尝试使用以下代码将 uniqueidentifier 参数传递给存储过程: myCommand.Parameters.Add("@BlogID", SqlDbType.UniqueIdentif
这个问题在这里已经有了答案: How to check if a string is a uniqueidentifier? (15 个答案) 关闭 6 年前。 我有一个 SQL Server 表,
我是一名优秀的程序员,十分优秀!