如何使用数据网格视图更新c#中的OleDb(访问)数据库

时间:2015-03-17 11:46:49

标签: c# oledb

我有一个查询oledb数据库的方法,并将结果提供给数据网格视图。现在我想使用相同的数据网格视图更新数据库。当我在数据网格视图中更改结果并单击更新按钮时,应该在数据库中更新它。我搜索了它的代码,我发现的代码不起作用。我的查看方法和更新方法如下。请帮我解决此更新代码。

private void btnViewSaleView_Click(object sender, EventArgs e)
    {
        String sql = "select * from business where billNumber=(?)";
        OleDbCommand com = new OleDbCommand(sql, connection);
        com.Parameters.AddWithValue("@p1", txtViewSaleBillNumber.Text);
        String textViewSaleStringTemp;
        connection.Open();
        OleDbDataReader res = com.ExecuteReader();
       if (res.Read())
        {
            textViewSaleStringTemp = res["salesRepNumber"].ToString();
            txtViewSaleSalesRepNumber.Text = textViewSaleStringTemp;
            textViewSaleStringTemp = res["Customer"].ToString();
            txtViewSaleCustomer.Text = textViewSaleStringTemp;
            textViewSaleStringTemp = res["cashReceived"].ToString();
            txtViewSaleCashReceived.Text = textViewSaleStringTemp;
            textViewSaleStringTemp = res["paymentCompleteDate"].ToString();
            txtViewSalePaymentCompletedDate.Text = textViewSaleStringTemp;
          }
       OleDbDataAdapter ada = new OleDbDataAdapter();
       String sqlDGV = "select * from BillItem where billNumber=(?)";
       OleDbCommand comDGV= new OleDbCommand(sqlDGV, connection);
       ada.SelectCommand = comDGV;
       comDGV.Parameters.AddWithValue("@p1", txtViewSaleBillNumber.Text);
       DataTable t = new DataTable();
       ada.Fill(t);
       DGVViewSale.DataSource = t;
       connection.Close();

    } 
 private void btnViewSaleUpdate_Click(object sender, EventArgs e)
    {
        OleDbCommandBuilder cmb = new OleDbCommandBuilder(ada);
        ada.Update(t);
 //but this command doesn't recognize data adapter and the data table

    }

0 个答案:

没有答案