2016-08-03 121 views
-1

我試圖開發具有這種基本結構的過程:INSERT語句的選擇列表包含多於插入列表項較少(但相同的)

select a.* 
into #temp1 
from OPENQUERY(otherDB,'SELECT ... FROM ...')a 
INSERT INTO [dbo].[Data] 
     (....) 
select * 
from #temp1 
DROP TABLE #temp1 

列從結果量該OPENQUERY是相同的INSERT

我怎麼能相扶此錯誤:​​

INSERT語句的選擇列表包含超過個項目少e插入列表。 SELECT值的數量必須與INSERT列的數量相匹配。

+2

您將需要一個最小的工作示例。如果你的SQL引擎告訴你在'SELECT'中的列數少於'INSERT',我更可能認爲它是正確的,並且你犯了一個錯誤,而不是引擎被破壞。換句話說,*我不相信它是相同的*。 – zebediah49

+1

'dbo.Data'是否有一個您忘記的'IDENTITY'列? – Nicarus

+3

不要使用「*」,拼出列。 – granadaCoder

回答

3

如果您嘗試製作更具體的選擇,該怎麼辦?例如:

insert into dbo.data (col1,col2) select col1,col2..... 
相關問題