SQL查詢結果匯出XML檔案簡單的方法

2021-04-14 19:05:22 字數 952 閱讀 3852

注:此方法僅支援sql2005

最近需要把資料導成xml,不想通過程式設計實現,手工使用匯入匯出工具又覺得麻煩,想想還是寫sql語句執行的好,以後擴充套件也方便,但microsoft好像並沒有提供什麼sql語句可以直接匯出方法,用bcp匯出的都是文字、excel或其他什麼的,本來以為可以把查詢結果通過bcp匯出文字的形式,但經過n次試驗,匯出的xml不知道為什麼都會自動換行,一開啟就會報錯,百思不得其解,而且匯出的xml沒有乙個,這也是個麻煩事。

最關鍵的就是這兩個問題:1.如何使用xml不自動換行;2.如何增加乙個標籤;

use test

--建立乙個表

create table test_blan (x varchar(100), y varchar(100))

--插入資料

insert into  test_blan  values(...略...)

--建立乙個檢視用於增加標籤

create view  as select 'root'  l

--建立乙個表用於儲存生成的xml結果

create table tt (aa xml)

--定義乙個xml的變數

declare @x xml

--查詢生成xml結果並儲存到tt表中

set @x=( select iroot.l, idate.x,idata.y from test..test_log iroot, test..test_blan idata for xml auto)

insert tt values(@x)

--通過bcp將tt中的xml結果輸出

exec master..xp_cmdshell 'bcp test..tt out e:/123.xml -c -t -k'

--刪除表及檢視

drop table tt

drop view test_log

這樣匯出的xml就是個完整的檔案了

SQL 查詢結果為 XML

原始資料 1.auto模式 selectorderno,createdate,username,address fromwhir order orderinfo forxmlauto,xmlschema 結果 2.raw模式selectorderno,createdate,username,addr...

SQL 查詢結果為 XML

原始資料 1.auto模式 selectorderno,createdate,username,address fromwhir order orderinfo forxmlauto,xmlschema 結果 2.raw模式selectorderno,createdate,username,addr...

sql查詢結果集匯出Excel

t sql exec master.xp cmdshell bcp 庫名.dbo.表名out c temp.xls c q s servername u sa p 引數 s 是sql伺服器名 u是使用者 p是密碼 說明 還可以匯出文字檔案等多種格式 declare str varchar 600 s...