怎么用oledbCommand操作access数据库??
我做的C#的winform版的系统,在连接数据库的时候还好,没有问题,但是在操作数据库时候,oledbCommand的ExecuteNonQuery()方法好像没有执行,我的数据库没有改变,但我发现只是在debug中的数据库副本里做了改动,再次运行的时候就什么也没有变化,请高手指点!!!!
------解决方案--------------------但我发现只是在debug中的数据库副本里做了改动 
 ======== 
 不知道说什么     
 int affectedRecords = MyCommand.ExecuteNonQuery(); // 返回影响的行数
------解决方案--------------------string path=Directory.GetCurrentDirectory().ToString()+@ "\ "; 
             string DBFile =  "test.mdb "; 
             this.OLEDBC.Close(); 
             this.OLEDBC.ConnectionString = @ "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " + path + DBFile;                                            
             if (!File.Exists(path +DBFile)) 
             { 
                 MessageBox.Show( "数据库文件不存在! "); 
                 return; 
             }   
             try 
             { 
                 this.OLEDBC.Open(); 
                 this.oleDBA.SelectCommand.Connection = this.OLEDBC; 
                 String Querystr = @ "select * from temp where(name like @name) "; 
                 this.oleDBA.SelectCommand.CommandText = Querystr;   
                 int mark = 0; 
                 try 
                 { 
                     mark = int.Parse(textBoxMark.Text); 
                 } 
                 catch (Exception eMessage) 
                 { 
                     mark = 0; 
                 } 
                 this.oleDBA.SelectCommand.Parameters.Clear(); 
                 this.oleDBA.SelectCommand.Parameters.AddWithValue( "@name ",  "% " + this.textBoxName.Text +  "% "); 
                 this.oleDBA.SelectCommand.ExecuteNonQuery(); 
                 DataTable dt = new DataTable(); 
                 this.oleDBA.Fill(dt); 
                 this.DGVSelect.DataSource = dt; 
             } 
             catch (Exception eMessage) 
             { 
                 //MessageBox.Show(eMessage.ToString()); 
             } 
             finally 
             { 
                 this.OLEDBC.Close(); 
             } 
         } 
 按这个方法试一下,看能不能查到结果,ExecuteNonQuery()执行select语句一样能返回结果,如果换成ExecuteReader()则需要手动把DataReader()转换为DataTable然后再绑定到DataGridView,最后一定要关闭DataReader()
------解决方案--------------------哎呀,你连接的根本就不是一个数据库,你是把数据添加进项目里面了吧,修改的数据当然是DEBUG下面的
------解决方案--------------------数据库路径不建议写死   
 而应该写成类似   
 Application.StartupPath+@ "\DB\test.mdb ";//当前程序运行目录下的DB文件夹下test.mdb   
 由于你debug模式时 Application.StartupPath 就是debug路径 所以会修改debug下的DB文件夹   
 而当你如果直接运行exe时 那么他就会去找相应exe目录下的DB文件夹了