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();这句不要写,全部更新完毕后再写这句。