2013-07-18 75 views
1

我有一個XML文件,我想導入到SQL Server 2012。我以前沒做過,而且我也不知道。經過一番研究,我嘗試用SQL Server Management Studio中運行的以下命令打開xml文件。如何將XML文件導入到SQL Server 2012中

SELECT CAST(x as XML) FROM OPENROWSET(
BULK 'C:\bulk\Users_test1111.xml', 
SINGLE_BLOB 
) AS X 

爲此,我得到以下錯誤:

Msg 4861, Level 16, State 1, Line 1 
Cannot bulk load because the file "C:\bulk\Users_test1111.xml" could not be opened. Operating system error code 3(The system cannot find the path specified.). 

你有什麼建議做的就是將文件導入數據庫?

+0

錯誤消息'系統找不到指定的路徑.'表明文件無法找到應該在的位置。檢查它確實存在。 – jpw

+0

@jpg它是,但在當地。它應該與sql服務器在同一臺服務器上嗎? – Andrew

+2

由於您引用的是機器本地的路徑,因此您在其上運行查詢必須是該機器上有效的路徑。所以是的。 – jpw

回答

0

使用SSIS。 使用XML數據源創建SSIS包。 如果您不能使用/不具有集成服務,請使用UNC文件路徑來消除本地/網絡立場問題。

編輯:我沒有執行谷歌福在嘴邊射擊之前,我的最初想法之一是不正確的。

0

試試這個,我包含了一些額外的專欄來展示給你。

的文件也需要在服務器上(該路徑必須位於服務器上)

INSERT INTO TestTable(TestId, TestXml, TestText) 

Values('1', ( 
SELECT * FROM OPENROWSET(
    BULK 'C:\bulk\Users_test1111.xml', 
    SINGLE_BLOB) AS x), 'Some Test Text') 
1

我猜你有,我同樣的問題。一些用於使用SQL Server加載文件的命令要求文件位於實際的DB服務器本身上。如果您從另一臺計算機上運行SQL Server Management Studio,則會遇到此問題。

相關問題