我有以下带索引的临时表。这是有效的,因为我明确地将其命名为
IX_#Final_1
。
如何创建没有明确名称的索引?
CREATE TABLE [#Test1]
(
[ID] INT IDENTITY(1, 1) PRIMARY KEY,
[Member_BK] VARCHAR(20),
[Company] VARCHAR(20),
[Facility_Name] VARCHAR(200),
INDEX [IX_#Final_1] ([Member_BK], [Company])
)
我需要这个,因为dba.stackexchange.com中概述的问题 - 数据库中已经有一个名为 PK_MyPrimaryKey 的对象(临时表上的主索引)
您可以通过以 # 开头的名称来创建临时索引,例如
,而不是创建没有名称的索引-- During table creation
...
INDEX [#IX_Test] ([Member_BK], [Company])
...
-- or as standalone
CREATE NONCLUSTERED INDEX #IX_Test ON #Test1 ([Member_BK], [Company]);
这将创建一个与该临时对象关联的索引
参见此 db<>fiddle 作为示例,其中表 #Test1 和 #Test2 具有相同的命名索引 #IX_Test。