對不起,有關此主題的更多文章,但我絕望地試圖將這個XML導入到數據庫沒有任何成功。 這是XML:將XML導入到SQL
<session xmlns="http://winscp.net/schema/session/1.0" start="2014-11-03T17:23:22.376Z">
<ls>
<destination value="/Output" />
<files>
<file>
<filename value="." />
<type value="d" />
<modification value="2014-11-03T12:17:58.000Z" />
<permissions value="rwxr-sr-x" />
</file>
<file>
<filename value="7215_SG.csv" />
<type value="-" />
<size value="1584161" />
<modification value="2014-11-03T12:06:46.000Z" />
<permissions value="rw-r--r--" />
</file>
<file>
<filename value="6171_SG.csv" />
<type value="-" />
<size value="2298481" />
<modification value="2014-11-03T12:05:13.000Z" />
<permissions value="rw-r--r--" />
</file>
</files>
<result success="true" />
</ls>
</session>
這是sql語句導入XML:
SELECT xmldata.value('(./filename/@value)[1]', 'NVARCHAR(50)') AS szFilename, xmldata.value('(./type/@value)[1]', 'NVARCHAR(50)') AS szType, xmldata.value('(./size/@value)[1]', 'NVARCHAR(50)') AS szSize, xmldata.value('(./modification/@value)[1]', 'NVARCHAR(50)') AS szModification, xmldata.value('(./permissions/@value)[1]', 'NVARCHAR(50)') AS szPermissions FROM (SELECT CAST(x AS XML) FROM OPENROWSET(BULK 'd:\temp\Test\log.xml', SINGLE_BLOB) AS T(x)) AS T(x) CROSS APPLY x.nodes('//session/ls/files/file') AS X(xmldata);
你能幫助我,告訴我,我到底做錯了什麼?
在此先感謝!
假設這是'SQL-server' - 只是'SQL'只表示**查詢語言** - 而不是數據庫.....請總是**提供**具體數據庫**(最好也是它的**版本**)爲您的數據庫相關的問題! – 2014-11-04 12:54:18
你得到的錯誤是什麼? (如果有的話)這些信息總是有幫助的。 – funkwurm 2014-11-04 12:56:40
我沒有任何錯誤。問題是查詢不返回任何值。 – user2811907 2014-11-04 14:20:32