很多时候做数据对接,调用对方的ws返回ds,需要把此ds保存到自己的数据库,这时候如果逐条来保存,开销是比较大的。
这个时候使用da.update(ds)来保存,就方便很多,性能方面没有测试。
例子,把ds保存到tab1表,代码如下:
DataTable dt=ds.Tables[0];
DataSet ds1=new DataSet();
SqlDataAdapter da = new System.Data.SqlClient.SqlDataAdapter("Select top 0 * from tab1", conn);
SqlCommandBuilder builder = new SqlCommandBuilder(da);
da.Fill(ds1);
DataTable dt1 = ds1.Tables[0];
foreach (DataRow dr in dt.Rows)
{
DataRow dr1 = dt1.NewRow();
dr1["col1"] = dr["col1"];
dr1["col2"] = dr["col2"];
.....
dt1.Rows.Add(dr1);
}
da.Update(ds1);