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服务。 配置信息。。 树型分类。。。。
有的还用来做数据存储