创建表时创建无名称索引

问题描述 投票:0回答:1

我有以下带索引的临时表。这是有效的,因为我明确地将其命名为

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 的对象(临时表上的主索引)

sql-server t-sql azure-sql-database
1个回答
0
投票

您可以通过以 # 开头的名称来创建临时索引,例如

,而不是创建没有名称的索引
-- 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。

© www.soinside.com 2019 - 2024. All rights reserved.