在SQL中,当我创建数据库索引时,我需要为索引指定一个名称,如
CREATE INDEX timestamp_index ON hit (timestamp);
Run Code Online (Sandbox Code Playgroud)
唯一一次这个名称似乎是必要的,如果我想删除索引
DROP INDEX timestamp_index;
Run Code Online (Sandbox Code Playgroud)
索引名称还有其他用途吗?
SQL*_*ace 14
以下是需要考虑的几件事:
你会如何重建索引?
您将如何对索引进行碎片整理/重组?
你会如何改变指数?
您如何查看索引以查看其中的列?
查看执行计划时,您如何知道使用了哪个索引?
在执行BULK INSERT/BCP时如何禁用索引?
sys.dm_db_missing_index_details当你不知道名字时,你会如何使用DMV?
顺便说一句,当你创建primary key一个clustered index将被默认创建,SQL Server将赋予它为你的名字
create table bla (id int primary key)
go
select * from sys.sysobjects s
join sys.sysobjects s2 on s.parent_obj = s2.id
where s2.name = 'bla'
Run Code Online (Sandbox Code Playgroud)
这是为该索引生成的名称
PK__bla__3213E83F66603565