如何跨多个表创建唯一(索引)约束?

IT *_*her 3 index sql-server unique-constraint

有没有办法在 SQL Server 数据库中的表之间创建唯一索引?我有两个表,表 A 和表 B。因为我有一个名为 ID 的列,我想让这些 Id 列唯一(组合表 A 和 B 的 Ids )

我怎样才能做到这一点 ?

von*_*ryz 8

您可以使用序列来生成 ID 字段的值。该文档明确提到了您的用例。所述页面上的示例 C 有一个关于此的示例实现。

在以下场景中使用序列而不是标识列:

  • 该应用程序需要在多个表或表中的多个列之间共享单个数字系列。

请注意,有一些问题。例如,序列值是可重用的,默认情况下不是唯一的,并且可以包含间隙。注意文档中的限制部分。