存储过程中建立了一个临时表,但多人并发时总是出错,怎么解决
CREATE TABLE #aTemp (
[ID] [int] IDENTITY (1, 1) NOT NULL ,
[UserName] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,
CONSTRAINT [PK_#aTemp] PRIMARY KEY  CLUSTERED 
(
[ID]
)  ON [PRIMARY] 
) ON [PRIMARY]先建立了个临时表,然后还有一系列的运算,时间比较长
我发现1个人打开的时候没问题,多个人同时打开就出错了,提示是:数据库中已存在名为 'PK_#aTemp' 的对象。未能创建约束。请参阅前面的错误信息。应该怎么办好?

解决方案 »

  1.   

    是你的临时表的约束重复了,SQL有没有对应临时表的临时约束这个我就不知道了~~
      

  2.   

    是否可以不用建立主键?不用主键下面的可以
    CREATE TABLE #aTemp ( 
    [ID] [int] IDENTITY (1, 1) NOT NULL , 
    [UserName] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL 
    )也可以用表变量
    declare @aTemp table( 
    [ID] [int] IDENTITY (1, 1) NOT NULL , 
    [UserName] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NULL 
    )