读书人

DataSet读取XML解决方案

发布时间: 2013-02-24 17:58:57 作者: rapoo

DataSet读取XML
DataSet ds=new DataSet();
ds.ReadXml(@"C:\Users\Administrator\Desktop\xx.xml", XmlReadMode.Auto);

foreach (System.Data.DataTable table in ds.Tables)
{
foreach (DataRow row in table.Rows)
{
foreach (DataColumn col in table.Columns)
{
MessageBox.Show(col.ToString ()+row[col].ToString()); //可以输出具体数值
}
}
}
OracleCommandBuilder builder = new OracleCommandBuilder(da);
da.Update(ds);
我现在想利用读取到的XML信息,把它通过DataAdapter.Uptdae(ds)写入到数据库中,应该怎么写,求指导。
[解决办法]
数据库中的表结构要同ds中的一致。
da.SelectCommand.CommandText="select * from "+"数据库中的表名";
OracleCommandBuilder builder = new OracleCommandBuilder(da);
da.Update(ds.Tables[0]);

就可以了。

[解决办法]
每次Update相应表之前,都执行一下da.SelectCommand.CommandText="select * from "+"数据库中的表名";
然后重新new一个CommandBuilder,再Update。
每次Update(ds.Tables[x])中的Tables[x]要同上面代码中的“数据库中的表名”要一致。

另外ds.AcceptChanges();这句不要写,全部更新完毕后再写这句。

读书人网 >C#

热点推荐