OleDbDataAdapter修改数据
时间: 2024-05-15 19:15:46 浏览: 71
C#导出Excel的代码
OleDbDataAdapter可以通过以下步骤来修改数据:
1. 创建一个OleDbConnection对象并打开连接。
2. 创建一个OleDbDataAdapter对象并设置其SelectCommand属性为SELECT语句,用于获取要修改的数据。
3. 创建一个DataSet对象并使用OleDbDataAdapter的Fill方法填充数据。
4. 在DataSet中修改数据。
5. 创建一个OleDbCommandBuilder对象并设置其DataAdapter属性为OleDbDataAdapter对象。
6. 调用OleDbDataAdapter的Update方法,将修改后的数据保存到数据库中。
以下是示例代码:
```csharp
string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Northwind.mdb";
string selectCommand = "SELECT * FROM Customers";
string updateCommand = "UPDATE Customers SET CompanyName = ?, ContactName = ?, City = ? WHERE CustomerID = ?";
// 创建OleDbConnection对象并打开连接
using (OleDbConnection connection = new OleDbConnection(connectionString))
{
connection.Open();
// 创建OleDbDataAdapter对象并设置SelectCommand属性
OleDbDataAdapter adapter = new OleDbDataAdapter(selectCommand, connection);
// 创建DataSet对象并使用OleDbDataAdapter的Fill方法填充数据
DataSet dataSet = new DataSet();
adapter.Fill(dataSet, "Customers");
// 在DataSet中修改数据
DataRow row = dataSet.Tables["Customers"].Rows[0];
row["CompanyName"] = "New Company";
row["ContactName"] = "New Contact";
row["City"] = "New York";
// 创建OleDbCommandBuilder对象并设置DataAdapter属性
OleDbCommandBuilder commandBuilder = new OleDbCommandBuilder(adapter);
// 调用OleDbDataAdapter的Update方法,将修改后的数据保存到数据库中
adapter.UpdateCommand = new OleDbCommand(updateCommand, connection);
adapter.UpdateCommand.Parameters.Add("@CompanyName", OleDbType.VarChar, 40, "CompanyName");
adapter.UpdateCommand.Parameters.Add("@ContactName", OleDbType.VarChar, 30, "ContactName");
adapter.UpdateCommand.Parameters.Add("@City", OleDbType.VarChar, 15, "City");
adapter.UpdateCommand.Parameters.Add("@CustomerID", OleDbType.VarChar, 5, "CustomerID");
adapter.Update(dataSet, "Customers");
}
```
阅读全文