xml資料庫net
① asp.net 資料庫 讀取 xml
我學過c#/asp.net,看樣子和你寫的代碼差不多,不知道是不是你需要的解釋哈 。
string sql = "SELECT id,name FROM content FOR XML AUTO,XMLDATA";
從資料庫查詢到符合條件的數據欄位,相當於負值到xml中對應列
SqlConnection conn = new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["testDataBase"]);
SqlCommand cmd = new SqlCommand(sql, conn);
conn.Open();
XmlTextReader objXmlReader = (XmlTextReader)cmd.ExecuteXmlReader();
DataSet ds = new DataSet();
ds.DataSetName = "XML";
和直接讀取資料庫數據表意思一樣,形成數據集以供程序代碼應用,當然了如果你不如果不知道形成數據集是個什麼概念我就很難說了,那你就是新手了。
ds.ReadXml(objXmlReader, XmlReadMode.Fragment);
ds.WriteXml(Server.MapPath("XML.xml"));
conn.Close();
這里開始真正的將數據讀取出來,存放到xml文件中。
總的來說,程序連接資料庫的時候,不管是做什麼應用,不外乎就是:
打開資料庫連接--形成數據集--操作形成的數據集--關閉數據接,幾個大的步驟
② asp.net中的XML文件有主要有什麼作用
兄弟,這個問題一言難盡啊
xml功能太強大了,舉幾個例子吧
1、可以做為資料庫存儲數據
讀操作:
假如你的web應用程序里有一個Procts.xml,你可以用DataSet來讀取這個xml,然後綁定到DataList,DataGrid等的控制項上
寫操作:
如果你建立一個購物車的DataTable,就可以將它寫入到xml文件中去
2、如果你會用xsl,可以將xml整合到首頁上,讓你更新網頁更容易,也很容易管理,樣式改動也方便
3、關於xml的技術太多了,xpath,xquery,xslt等等,包括語音標記、矢量圖標記等等,詳情請參照www.w3.org
4、一般的說,xml已經廣泛的應用,你用的office軟體保存的doc,xls等等的格式背後都是xml標記,一些矢量圖的軟體Visio,做出的圖形其實都是基於xml技術的,ajax技術也是基於xml技術的
5、忘了最重要的一個未來會大大發展的技術,web services,實質也是xml的一種應用
③ .net語言如何抓取xml文件中的數據並錄入到資料庫
使用下面的方法
//引用System.Xml
//usingSystem.Xml.XPath;
vartestXml=CreateTestXml();
varxPathDocument=newXPathDocument(testXml);
varnavigator=xPathDocument.CreateNavigator();
//查找row節點下的num屬性,找到第一個就返回
//如果要找多個使用select
varnumNode=navigator.SelectSingleNode(@"//row/@num");
if(numNode!=null)
Debug.WriteLine(numNode.Value);
④ vb.net操作xml資料庫(急)
使用System.XML
Imports Microsoft.VisualBasic
Imports System
Imports System.IO
Imports System.Xml
namespace HowTo.Samples.XML
public class WriteXmlFileSample
private const document as string = "newbooks.xml"
shared sub Main()
Dim myWriteXmlFileSample as WriteXmlFileSample
myWriteXmlFileSample = new WriteXmlFileSample()
myWriteXmlFileSample.Run(document)
end sub
public sub Run(args As String)
Dim myXmlTextReader as XmlTextReader = nothing
Dim myXmlTextWriter as XmlTextWriter = nothing
try
myXmlTextWriter = new XmlTextWriter (args, nothing)
myXmlTextWriter.Formatting = System.Xml.Formatting.Indented
myXmlTextWriter.WriteStartDocument(false)
myXmlTextWriter.WriteDocType("bookstore", nothing, "books.dtd", nothing)
myXmlTextWriter.WriteComment("此文件表示書店庫存資料庫的另一個片斷")
myXmlTextWriter.WriteStartElement("bookstore")
myXmlTextWriter.WriteStartElement("book", nothing)
myXmlTextWriter.WriteAttributeString("genre","autobiography")
myXmlTextWriter.WriteAttributeString("publicationdate","1979")
myXmlTextWriter.WriteAttributeString("ISBN","0-7356-0562-9")
myXmlTextWriter.WriteElementString("title", nothing, "The Autobiography of Mark Twain")
myXmlTextWriter.WriteStartElement("Author", nothing)
myXmlTextWriter.WriteElementString("first-name", "Mark")
myXmlTextWriter.WriteElementString("last-name", "Twain")
myXmlTextWriter.WriteEndElement()
myXmlTextWriter.WriteElementString("price", "7.99")
myXmlTextWriter.WriteEndElement()
myXmlTextWriter.WriteEndElement()
'向文件寫 XML 並關閉編寫器
myXmlTextWriter.Flush()
myXmlTextWriter.Close()
' 讀取返回的文件並進行分析以確保正確生成 XML
myXmlTextReader = new XmlTextReader (args)
FormatXml (myXmlTextReader, args)
catch e as Exception
Console.WriteLine ("異常:{0}", e.ToString())
finally
Console.WriteLine()
Console.WriteLine("對文件 {0} 的處理已完成。", args)
If Not myXmlTextReader Is Nothing
myXmlTextReader.Close()
end if
'關閉編寫器
If Not myXmlTextWriter Is Nothing
myXmlTextWriter.Close()
end if
End try
End Sub
private shared Sub FormatXml (reader as XmlTextReader, filename as String)
Dim piCount, docCount, commentCount, elementCount as Integer
Dim attributeCount, textCount, whitespaceCount as Integer
While reader.Read()
Select (reader.NodeType)
case XmlNodeType.ProcessingInstruction:
Format (reader, "ProcessingInstruction")
piCount += 1
case XmlNodeType.DocumentType:
Format (reader, "DocumentType")
docCount += 1
case XmlNodeType.Comment:
Format (reader, "Comment")
commentCount += 1
case XmlNodeType.Element:
Format (reader, "Element")
elementCount += 1
While reader.MoveToNextAttribute()
Format (reader, "Attribute")
end While
if (reader.HasAttributes)
attributeCount += reader.AttributeCount
end if
case XmlNodeType.Text:
Format (reader, "Text")
textCount += 1
case XmlNodeType.Whitespace:
whitespaceCount += 1
End Select
End While
' 顯示該文件的統計信息
Console.WriteLine ()
Console.WriteLine("{0} 文件的統計信息", filename)
Console.WriteLine ()
Console.WriteLine("處理指令:" & piCount)
Console.WriteLine("文檔類型:" & docCount)
Console.WriteLine("注釋:" & commentCount)
Console.WriteLine("元素:" & elementCount)
Console.WriteLine("屬性:" & attributeCount)
Console.WriteLine("文本:" & textCount)
Console.WriteLine("空白:" & whitespaceCount)
End Sub
private shared Sub Format(byref reader as XmlTextReader , NodeType as String)
' 格式化輸出
Console.Write(reader.Depth & " ")
Console.Write(reader.AttributeCount & " ")
Dim i as Integer
for i = 0 to reader.Depth - 1
Console.Write(Strings.chr(9))
Next
Console.Write(reader.Prefix & NodeType & "<" & reader.Name & ">" & reader.Value)
Console.WriteLine()
End Sub
End Class
End Namespace
參考:http://chs.gotdotnet.com/quickstart/util/srcview.aspx?path=%2fquickstart%2fhowto%2fsamples%2fXml%2fWriteXmlFile%2fWriteXmlFile.src
⑤ C#中資料庫查出來的數據怎麼綁定成xml數據源顯示到.net頁面上
你可以自己把資料庫的內容拼接成xml的格式,然後response到頁面上,但是要注意一下幾點
1).aspx的頁頭聲明部分需要聲明頁面的輸出類型:ContentType="text/xml",或者在程序中設置:Response.ContentType = "text/xml";
2)xml的頭部Encoding的聲明需要和Response.ContentEncoding一致,如果xml頭部<?xml version="1.0" encoding="utf-8"?>那麼在頁面Response.Write以前需要聲明我的輸出編碼格式為Response.ContentEncoding = System.Text.Encoding.GetEncoding("utf-8");gb2312同理。
3)需要格式良好的xml
Response.ContentType = "text/xml";
Response.ContentEncoding = System.Text.Encoding.GetEncoding("utf-8");
sb.Append("<?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n");
sb.Append("<news>\r\n");
for (int i = 0; i < dt.Rows.Count; i++)
{
if (i == 0)
{
sb.Append("<latest>\r\n");
sb.Append("<title>\r\n<![CDATA[");
sb.Append(dt.Rows[i]["title"].ToString());
sb.Append("]]></title>\r\n");
sb.Append("<content>\r\n<![CDATA[");
sb.Append(dt.Rows[i]["content"].ToString().Replace("\r\n","<br/>"));
sb.Append("]]></content>\r\n");
sb.Append("<date>\r\n");
sb.Append(dt.Rows[i]["createtime"].ToString());
sb.Append("</date>\r\n");
sb.Append("</latest>\r\n");
}
else
{
sb.Append("<top4>\r\n");
sb.Append("<aid>\r\n");
sb.Append(dt.Rows[i]["aid"].ToString());
sb.Append("</aid>\r\n");
sb.Append("<title>\r\n<![CDATA[");
sb.Append(dt.Rows[i]["title"].ToString());
sb.Append("]]></title>\r\n");
sb.Append("<date>\r\n");
sb.Append(dt.Rows[i]["createtime"].ToString());
sb.Append("</date>\r\n");
sb.Append("</top4>\r\n");
}
}
⑥ .net從資料庫中讀取數據保存為XML文件
//創建xml
XmlDocument xmldoc = new XmlDocument();
//聲明節
XmlDeclaration dec = xmldoc.CreateXmlDeclaration("1.0", "utf-8", null);
xmldoc.AppendChild(dec);
//加入一個根節點
XmlElement oneNode = xmldoc.CreateElement("pricelist");
//創建節點
XmlElement twoNode = xmldoc.CreateElement("oilprices");
for(int i=0;i<Table中的條數的大小;i++)
{
XmlElement twoNodeone = xmldoc.CreateElement("price");
twoNodeone.SetAttribute("year", "year的值");
twoNodeone.SetAttribute("value", "表中的數據循環value的值");
twoNode.AppendChild(twoNodeone);//添加到oilprices節點下面
}
oneNode.AppendChild(twoNode);//添加到pricelist節點下面
//創建節點
XmlElement threeNode = xmldoc.CreateElement("fuelprices");
for (int i = 0; i < Table中的條數的大小; i++)
{
XmlElement threeNodeone = xmldoc.CreateElement("price");
threeNodeone.SetAttribute("year", "year的值");
threeNodeone.SetAttribute("e95", "表中的數據循環e95的值");
threeNodeone.SetAttribute("e98", "表中的數據循環e98的值");
threeNode.AppendChild(twoNodeone);//添加到fuelprices節點下面
}
oneNode.AppendChild(threeNode);//添加到pricelist節點下面
xmldoc.Save(Server.MapPath("")+"/1.xml");//保存xml
直接保存為xml:DataTable tab = new DataTable(); tab.WriteXml("", XmlWriteMode.WriteSchema, true);
⑦ 在ASP.net的XML中怎麼讀取資料庫中的數據
給你個例子:是增加操作.你換成查詢就行了.
using
System;
using
System.Collections;
using
System.ComponentModel;
using
System.Data;
using
System.Drawing;
using
System.Web;
using
System.Web.SessionState;
using
System.Web.UI;
using
System.Web.UI.WebControls;
using
System.Web.UI.HtmlControls;
using
System.Xml;
private
XmlDocument
xmlDoc;
//load
xml
file
private
void
LoadXml()
{
xmlDoc=new
XmlDocument();
xmlDoc.Load(Server.MapPath("User.xml"));
}
//添加節點
private
void
AddElement()
{
LoadXml();
XmlNode
xmldocSelect=xmlDoc.SelectSingleNode("user");
XmlElement
el=xmlDoc.CreateElement("person");
//添加person節點
el.SetAttribute("name","風雲");
//添加person節點的屬性"name"
el.SetAttribute("sex","女");
//添加person節點的屬性
"sex"
el.SetAttribute("age","25");
//添加person節點的屬性
"age"
XmlElement
xesub1=xmlDoc.CreateElement("pass");
//添加person節點的里的節點
xesub1.InnerText="123";//設置文本節點
el.AppendChild(xesub1);
XmlElement
xesub2=xmlDoc.CreateElement("Address");
xesub2.InnerText="昆明";//設置文本節點
el.AppendChild(xesub2);
xmldocSelect.AppendChild(el);
xmlDoc.Save(Server.MapPath("user.xml"));
}
⑧ xml對NET有什麼意義
xml功能太強大了,舉幾個例子吧
1、可以做為資料庫存儲數據
讀操作:
假如你的web應用程序里有一個Procts.xml,你可以用DataSet來讀取這個xml,然後綁定到DataList,DataGrid等的控制項上
寫操作:
如果你建立一個購物車的DataTable,就可以將它寫入到xml文件中去
2、如果你會用xsl,可以將xml整合到首頁上,讓你更新網頁更容易,也很容易管理,樣式改動也方便
3、關於xml的技術太多了,xpath,xquery,xslt等等,包括語音標記、矢量圖標記等等,詳情請參照www.w3.org
4、一般的說,xml已經廣泛的應用,你用的office軟體保存的doc,xls等等的格式背後都是xml標記,一些矢量圖的軟體Visio,做出的圖形其實都是基於xml技術的,ajax技術也是基於xml技術的
5、忘了最重要的一個未來會大大發展的技術,web services,實質也是xml的一種應用
另外,做網頁。CSDN 就是了。rss, web服務。 配置信息。。 樹型分類。。。。
有的還用來做數據存儲