从#tempTable插入表失败

AJ *_*JIM 2 sql-server select insert

我只是从表中获取数据并将其插入到#tempTable中然后删除数据,然后将其插回到表中.我得到"插入错误:列名称或提供的值的数量与表定义不匹配".错误.

这是我正在运行的线路.

SELECT * INTO #tempTable FROM dbo.ProductSales 

SELECT * FROM #tempTable

DELETE FROM dbo.ProductSales

INSERT INTO dbo.ProductSales SELECT * FROM #tempTable
Run Code Online (Sandbox Code Playgroud)

任何的想法?

Tho*_*mas 6

如果ProductSales具有标识或时间戳/ rowversion列,则无法SELECT *用于插入.而是枚举跳过标识列的列:

Insert ProductSales(Col1, Col2....
Select Col1, Col2...
From #tempTable
Run Code Online (Sandbox Code Playgroud)