DataSet是存在内存中的对象,DataAdapter是与数据库连接信息相关的。

所以要批量更新一个DataSet,需要借助DataAdapter.

static private DataSet CreateCommandAndUpdate(

string connectionString,

string queryString)

{

DataSet dataSet = new DataSet();

 

using (OleDbConnection connection =

new OleDbConnection(connectionString))

{

connection.Open();

OleDbDataAdapter adapter =

new OleDbDataAdapter();

adapter.SelectCommand =

new OleDbCommand(queryString, connection);

OleDbCommandBuilder builder =

new OleDbCommandBuilder(adapter);

 

adapter.Fill(dataSet);

 

// Code to modify data in the DataSet here.

 

// Without the OleDbCommandBuilder, this line would fail.

adapter.UpdateCommand = builder.GetUpdateCommand();

adapter.Update(dataSet);

}

return dataSet;

}

这样的机制也带来一个好处,比如我们想要从一个数据库中取出数据,更新到另一个数据库中去,就可以借助Dataset作为一个中间载体。

posted on 2012-02-24 17:47  今夜太冷  阅读(233)  评论(0编辑  收藏  举报