如何在SQL Server 2012中创建的临时表上查找索引列表

如何在SQL Server 2012中创建的临时表上查找索引列表,sql,sql-server,temporary,database-indexes,Sql,Sql Server,Temporary,Database Indexes,有人能帮我在SQL Server 2012中创建的临时表上获取索引列表吗 这里有一种方法,使用: 为什么不能使用类似SELECT object_id'tempdb..IX_TMPINDEX';或者可以?为什么不能使用类似SELECT object_id'tempdb..IX_TMPINDEX';或者你能吗? CREATE TABLE #temp (id int, val1 int) CREATE INDEX ix_t1 on #temp (id) EXEC tempdb.dbo.sp_hel

有人能帮我在SQL Server 2012中创建的临时表上获取索引列表吗

这里有一种方法,使用:


为什么不能使用类似SELECT object_id'tempdb..IX_TMPINDEX';或者可以?为什么不能使用类似SELECT object_id'tempdb..IX_TMPINDEX';或者你能吗?
CREATE TABLE #temp (id int, val1 int)

CREATE INDEX ix_t1 on #temp (id)

EXEC tempdb.dbo.sp_helpindex '#temp'
CREATE TABLE #tmpTable (ID BIGINT PRIMARY KEY, INDEXCOLUMN BIGINT)

IF NOT EXISTS(SELECT * FROM tempdb.sys.indexes WHERE name = 'IX_TMPINDEX' AND OBJECT_ID = object_id('tempdb..#tmpTable'))
BEGIN
CREATE NONCLUSTERED INDEX IX_TMPINDEX ON #tmpTable (INDEXCOLUMN)    
END

GO 

SELECT * FROM tempdb.sys.indexes WHERE OBJECT_ID = object_id('tempdb..#tmpTable')