2010-05-06 121 views
2

我只是從表中取數據並將其插入到#tempTable中,然後刪除數據並將其插回到表中。我得到「插入錯誤:列名稱或提供的值數量與表定義不匹配」。錯誤。從#tempTable插入表失敗

下面是我正在運行的行。

SELECT * INTO #tempTable FROM dbo.ProductSales 

SELECT * FROM #tempTable 

DELETE FROM dbo.ProductSales 

INSERT INTO dbo.ProductSales SELECT * FROM #tempTable 

任何想法?

+1

ProductSales是否有任何計算列? – 2010-05-06 23:09:09

回答

6

如果ProductSales有一個標識或時間戳/行版本列,您將無法使用SELECT *進行插入。相反,列舉跳過標識列的列:

Insert ProductSales(Col1, Col2.... 
Select Col1, Col2... 
From #tempTable