SQL 服务器临时表在不同的会话中有一个键

SQL Server temporary tables with a key in different sessions

在存储过程中,我使用带有主键的临时 table。

CREATE TABLE #tmpTable
(
    [RowId] [bigint] IDENTITY(1,1) NOT NULL,
    [Id] [numeric](10, 0) NOT NULL
)

ALTER TABLE #tmpTable 
    ADD CONSTRAINT PK_NamePK PRIMARY KEY CLUSTERED (RowId); 

程序有效,但如果我 运行 在另一个会话中执行相同的程序,我会收到错误消息

'PK_NamePK already exists'

如何在临时 table 上使用键或索引,以便它们仅在其范围内可见?

   CREATE TABLE #tmpTable
   (
        [RowId] [bigint] IDENTITY(1,1) NOT NULL PRIMARY KEY,
        [Id] [numeric](10, 0) NOT NULL
    )

不需要加alter table,可以通过table创建来定义。希望这项工作,我以前从未尝试过在 temptable 上添加主键。