在不同会话中具有键的SQL Server临时表

叶夫根·奥雷尔

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

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已经存在'

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

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

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

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章