通過SQL語句直接把表導出為XML格式
發(fā)布日期:2022-01-28 12:37 | 文章來源:gibhub
復制代碼 代碼如下:
USE [ip]
GO
/****** 對象: Table [dbo].[SiteData] 腳本日期: 09/11/2010 17:41:11 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[SiteData](
[id] [int] IDENTITY(1,1) NOT NULL,
[SiteName] [varchar](50) COLLATE Chinese_PRC_CI_AS NOT NULL,
[SiteAdd] [varchar](100) COLLATE Chinese_PRC_CI_AS NOT NULL,
[BaiduSort] [int] NOT NULL CONSTRAINT [DF_SiteData_BaiduSort] DEFAULT ((0)),
[BaiduShouLu] [int] NOT NULL CONSTRAINT [DF_SiteData_BaiduShouLu] DEFAULT ((0)),
CONSTRAINT [PK_SiteData] PRIMARY KEY CLUSTERED
(
[id] ASC
)WITH (PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY] GO
SET ANSI_PADDING OFF
表中數(shù)據(jù)如下:
表中字段分別為:編號、網(wǎng)站名稱、網(wǎng)站地址、百度排名、百度收錄。
現(xiàn)在我們就把這張表直接導出為XML格式,SQL語句如下:
復制代碼 代碼如下:
SELECT
1 AS Tag,
NULL AS Parent,
SiteName AS [site!1!網(wǎng)站名稱],
SiteAdd AS [site!1!網(wǎng)站地址],
BaiduSort AS [site!1!百度排名],
BaiduShouLu AS [site!1!百度收錄]
FROM SiteData order by BaiduShouLu FOR XML EXPLICIT
運行這條語句之后,我們在SQL Server2005的運行結(jié)果里可以看到如下內(nèi)容:
我們可以看到,這個XML的節(jié)點的內(nèi)容我們是可以在SQL與距離進行自定義的,這個時候只要我們點擊一下這個輸出結(jié)果,就能導出XML格式的一段代碼了。
我們將會得到:
復制代碼 代碼如下:
<site 網(wǎng)站名稱="博客園" 網(wǎng)站地址="https://www.jb51.net/" 百度排名="20" 百度收錄="6020000" />
我們現(xiàn)在得到的這個XML代碼是不包含XML的表頭以及編碼格式的,如果我們想做的更傻瓜化一些可以直接在后臺自定義添加以下內(nèi)容:
復制代碼 代碼如下:
//content 是我們讀取數(shù)據(jù)庫后得到的string字符串
content = content.Replace("<", "<").Replace(""", "\"").Replace(">", ">");
//自定義XML編碼格式和父節(jié)點名稱
content = "<?xml version=\"1.0\" encoding=\"utf-8\"?><start>" + content + "</start>
//輸出XML到本地路徑using
(StreamWriter sw = new StreamWriter(@"E:\SoftUpdate\sql2xml.xml")) { sw.Write(content); }
版權(quán)聲明:本站文章來源標注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請保持原文完整并注明來源及原文鏈接。禁止復制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學習參考,不代表本站立場,如有內(nèi)容涉嫌侵權(quán),請聯(lián)系alex-e#qq.com處理。
相關(guān)文章