2013-12-09 207 views
0

在這裏發生什麼問題就要瘋了。將表格數據插入到另一個表格

所有我試圖做的是:「從一個表以兩列,並插入到其他表」

enter image description here

,我使用的查詢是這樣的:

insert into Component_Capacitor values (Component_Capacitor.itemNo, Component_Capacitor.itemDescription) 
    select [Item No#], [Item Description] from dbo.Sheet1$ where 
    [Item Description] LIKE 'CAP %' ; 

錯誤是這樣的:

Msg 4104, Level 16, State 1, Line 1 
The multi-part identifier "Component_Capacitor.itemNo" could not be bound. 
Msg 4104, Level 16, State 1, Line 1 
The multi-part identifier "Component_Capacitor.itemDescription" could not be bound. 

我檢查了語法,表名和一切似乎很好。

列類型也相似(nvarchar(255),null)

任何想法,我究竟做錯了什麼?

+1

從插入語句中刪除單詞「values」。 – Marc

+0

@Marc:確切的。像魅力一樣工作。謝謝 –

回答

3

我不使用SQL Server,但我認爲您需要從您的語句中刪除單詞「values」。

insert into Component_Capacitor (Component_Capacitor.itemNo, Component_Capacitor.itemDescription) 
    select [Item No#], [Item Description] from dbo.Sheet1$ where 
    [Item Description] LIKE 'CAP %' ; 
2
insert into Component_Capacitor 
(Component_Capacitor.itemNo, Component_Capacitor.itemDescription) 
    select [Item No#], [Item Description] from dbo.Sheet1$ where 
    [Item Description] LIKE 'CAP %' ; 
0

使用ItemNoItem Description簡單Item No和同樣的事情移除空白。 並刪除代碼中的值名稱

+1

user3044294,它不是答案,它不會工作。您必須改用[]。空間不能被刪除。 – Aditya

+0

Aditya檢查他已經使用[]的問題。 – user3044294

+0

是的,但源表中有空格名,所以如何刪除空格然後嘗試? – Aditya

2

正確替換列名稱&表名。這應該工作。

INSERT INTO DBO.COMPONENT_CAPACITOR (ITEMNO, ITEMDESCRIPTION) 
SELECT A.ITEMNO, A. ITEMDESCRIPTION FROM SHEET A 
WHERE ITEMDESCRIPTION LIKE 'CAP%' 
+0

你實際得到的錯誤,格式應該是這樣的,插入到destination_table(col1,col2,...)從source_table S中選擇(S.col1,S.col2,...) – Aditya

相關問題