3 private OleDbConnection OleCon = null ; // 连接数据库 4 private OleDbDataAdapter OleAdapter = null ; // 转换器 5 private DataSet ds = new DataSet(); // 数据集 6 public void AccessRead( string strFilePath, string strSQL, object obj) 8 string str = " Provider=Microsoft.Jet.Oledb.4.0;Data Source= " + strFilePath; 9 try 10 { 11 OleCon = new OleDbConnection(str); // 连接数据库 12 if (OleCon.State == ConnectionState.Open) { OleCon.Close(); } 13 OleCon.Open(); 14 // 15 OleAdapter = new OleDbDataAdapter(strSQL, OleCon); // 执行语句 16 // 17 OleAdapter.Fill(ds); // 填充数据集ds 18 // 19 DataGridView dgv = (DataGridView)obj; 20 dgv.DataSource = ds.Tables[ 0 ]; 21 // 22 OleCon.Close(); 23 } 24 catch (Exception ex) 25 { 26 MessageBox.Show(ex.ToString(), " 提示 " ); 27 } 29 } 30 // 31 public void AccessUpdate() 32 { 34 // 自动生成用于协调对 DataSet 的更改与关联数据库的单表命令 35 OleDbCommandBuilder OleCb = new OleDbCommandBuilder(OleAdapter); // 创建命令重建对象 36 try 37 { 38 OleAdapter.Update(ds); // 更新数据 39 } 40 catch (Exception ex) 41 { 42 MessageBox.Show(ex.ToString(), " 提示 " ); 43 } 44 }

2:Form界面操作:

 1 Access ac = new Access();
 2         //读取数据库
 3         private void btnOpen_Click(object sender, EventArgs e)
 5             string strFilePath=Application .StartupPath + @"\db\Database.mdb";
 6             string ChartName = "OracleInfo";
 7             string strSQL = "SELECT * FROM " + ChartName + " ORDER BY id ASC";
 8             ac.AccessRead(strFilePath, strSQL, dgv1);
10         //更新数据库
11         private void btnSave_Click(object sender, EventArgs e)
12         {
13             ac.AccessUpdate();
14             MessageBox.Show("更新成功", "提示");

3:效果如图:

1:当点击“'打开"按钮,看到数据库加载到控件DataGridView。

2:当修改第1列中的数据库名“24“修改为”20171128,点击“保存”后,显示"保存成功“。