使用c#从xml中读取数据并在数据库中写入数据
本文关键字:数据 数据库 读取 xml 使用 | 更新日期: 2023-09-27 18:02:04
是否有快速读取XML文件并将信息转储到数据库中的方法?
我有一个XSD文件,我使用Xsd2DB实用程序创建了一个数据库,可以在这里(http://xsd2db.sourceforge.net/) -
我现在有XML文件,我想插入到数据库中,有什么快速的方法来做到这一点吗?或者唯一的方法是读取/遍历XML并将记录插入数据库?
I tried following
- 我尝试读取XSD到数据集
- 然后我读取XML到相同的DS
但是我不知道如何告诉适配器将所有表推入数据库?
您可以将xml文件读入数据集,然后将数据集添加到表中。你怎么做取决于你的SQL服务器(mySql, Oracle, MS SQL)。下面是一个例子:
Imports System.Xml
Imports System.Data.SqlClient
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim connetionString As String
Dim connection As SqlConnection
Dim command As SqlCommand
Dim adpter As New SqlDataAdapter
Dim ds As New DataSet
Dim xmlFile As XmlReader
Dim sql As String
Dim product_ID As Integer
Dim Product_Name As String
Dim product_Price As Double
connetionString = "Data Source=servername;Initial Catalog=databsename;User ID=username;Password=password"
connection = New SqlConnection(connetionString)
xmlFile = XmlReader.Create("Product.xml", New XmlReaderSettings())
ds.ReadXml(xmlFile)
Dim i As Integer
connection.Open()
For i = 0 To ds.Tables(0).Rows.Count - 1
product_ID = Convert.ToInt32(ds.Tables(0).Rows(i).Item(0))
Product_Name = ds.Tables(0).Rows(i).Item(1)
product_Price = Convert.ToDouble(ds.Tables(0).Rows(i).Item(2))
sql = "insert into Product values(" & product_ID & ",'" & Product_Name & "'," & product_Price & ")"
command = New SqlCommand(sql, connection)
adpter.InsertCommand = command
adpter.InsertCommand.ExecuteNonQuery()
Next
connection.Close()
End Sub
结束课
你可以在这里找到更多的例子:http://vb.net-informations.com/xml/vb.net-xml-insert-database.htm