小编use*_*282的帖子

SQL Server 2008 R2 - 为什么我的临时表认为它有一个标识列?

我正在尝试创建一个存储过程,它将能够限制使用部门ID返回的记录数.我试图通过加入临时表来限制记录.

当我运行下面的代码时,我得到错误:

只有在使用列列表且IDENTITY_INSERT为ON时,才能指定表'#department'中标识列的显式值.

这是代码:

DECLARE @departmentID INT
SET @departmentID = 4

-- create temp department table --
select top 0 * into #department from PayrollDepartment

-- load temp department table
IF @departmentID < 1 OR @departmentID IS NULL
BEGIN
    INSERT INTO #department SELECT * FROM PayrollDepartment
END 
ELSE
BEGIN
    INSERT INTO #department SELECT * FROM PayrollDepartment WHERE PayrollDepartmentID =     @departmentID
END
Run Code Online (Sandbox Code Playgroud)

我开始时:

IF @departmentID < 1 OR @departmentID IS NULL
BEGIN
    SELECT * INTO #department FROM ApplicationEmployeeInfo..PayrollDepartment
END 
ELSE
BEGIN …
Run Code Online (Sandbox Code Playgroud)

sql temp-tables identity-insert sql-server-2008-r2

2
推荐指数
1
解决办法
1444
查看次数