2017-07-07 50 views
0

TSQL插入到表bulkcolumn - 需要2 bulkcolumn插入到相同的行TSQL插入到表bulkcolumn - 需要2 bulkcolumn插入到相同的行

我需要有兩個bulkcolumn插入到運行查詢同一行。

我想:

但是,我得到的錯誤:無效的對象名稱BulkColumn「 這只是一個語法問題,或者這是一個更基本的規則(比如一次只能插入每一個bulkcolumn聲明)?

例如:在SSMS編輯窗口中輸入 。

INSERT INTO [table1] ([id1], [bulk1],[bulk2] 
SELECT '123', 
BulkColumn 
FROM Openrowset(Bulk 'C:\bulkDir1\a1.jpg', Single_Blob) as a1, 
BulkColumn 
FROM Openrowset(Bulk 'C:\bulkDir2\b1.jpg', Single_Blob) as a2 

它說(在SSMS編輯窗口中的「彎彎曲曲的錯誤」。):
無效的對象名稱BulkColumn「

+1

什麼是波形錯誤? –

+0

當一個人正在查詢時,SSMS將在編輯窗口中放入什麼 – JosephDoggie

回答

1

你能做到這樣,你的語法是一點點關閉以獲取兩列:

CREATE TABLE table1(id1 nvarchar(60), 
    [bulk1] varbinary(max), [bulk2] varbinary(max)); 
GO 

INSERT INTO table1([id1], [bulk1],[bulk2]) 
    SELECT 
    '123' AS FileName,  
    pic1.BulkColumn , 
    pic2.BulkColumn 
    FROM OPENROWSET(BULK N'C:\test\a1.jpg', SINGLE_BLOB) AS pic1 
    inner join OPENROWSET(BULK N'C:\test\b1.jpg', SINGLE_BLOB) AS pic2 
    on 1=1 
+0

這絕對有效 - 人們可能也希望看到:https://stackoverflow.com/questions/3306096/combining-insert-into-and-with- CTE – JosephDoggie