MS SQL Server中的索引和约束是定义它们的表的本地索引和约束。因此,您可以轻松地在多个表中创建相同的索引或约束名称。外键约束(每个人都应该知道,它不是键,而是约束)将出现在Keys子文件夹中,并且它们的名称似乎是全局作用域。
有人知道为什么“键”有全局作用域名称吗?我确实理解键和索引之间的区别。我不明白为什么名字作用域会有这么大的区别。在所有情况下,它们都是为其定义的表的
为了在SQL Server 2012中获取表索引信息,我为一个场景确定了一个奇怪的情况。当Field_1是非唯一的、非集群的,而Field_3是集群索引时,我会得到正确的信息。但是,如果索引 Field_1 是聚集的,而Field_3是非唯一的,非聚集的,则没有关于Field_1索引的信息(例如。szIdxName和szIdxColName是"“,它们的长度是-1,意思是SQL_NULL_