程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> 其他數據庫知識 >> MSSQL >> 經由過程SQL語句直接把表導出為XML格局

經由過程SQL語句直接把表導出為XML格局

編輯:MSSQL

經由過程SQL語句直接把表導出為XML格局。本站提示廣大學習愛好者:(經由過程SQL語句直接把表導出為XML格局)文章只能為提供參考,不一定能成為您想要的結果。以下是經由過程SQL語句直接把表導出為XML格局正文


起首樹立一張表:


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

表中數據以下:

 表中數據

表中字段分離為:編號、網站稱號、網站地址、百度排名、百度收錄。

如今我們就把這張表直接導出為XML格局,SQL語句以下:

SELECT
1 AS Tag,
NULL AS Parent,
SiteName AS [site!1!網站稱號],
SiteAdd AS [site!1!網站地址],
BaiduSort AS [site!1!百度排名],
BaiduShouLu AS [site!1!百度收錄]
FROM SiteData order by BaiduShouLu FOR XML EXPLICIT

運轉這條語句以後,我們在SQL Server2005的運轉成果裡可以看到以下內容:

導出結果

我們可以看到,這個XML的節點的內容我們是可以在SQL與間隔停止自界說的,這個時刻只需我們點擊一下這個輸入成果,就可以導出XML格局的一段代碼了。

我們將會獲得:

<site 網站稱號="博客園" 網站地址="http://www.jb51.net/" 百度排名="20" 百度收錄="6020000" />

我們如今獲得的這個XML代碼是不包括XML的表頭和編碼格局的,假如我們想做的更傻瓜化一些可以直接在後台自界說添加以下內容:

//content 是我們讀取數據庫後獲得的string字符串
content = content.WordStr("<", "<").WordStr(""", "\"").WordStr(">", ">");
//自界說XML編碼格局和父節點稱號
content = "<?xml version=\"1.0\" encoding=\"utf-8\"?><start>" + content + "</start>
//輸入XML到當地途徑using
(StreamWriter sw = new StreamWriter(@"E:\SoftUpdate\sql2xml.xml")) { sw.Write(content); }

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved