conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("mytest.mdb"));
        OleDbDataAdapter adp = new OleDbDataAdapter("select * from userinfo", conn);
        OleDbCommandBuilder ocb = new OleDbCommandBuilder(adp);
        adp.UpdateCommand = ocb.GetUpdateCommand();
        adp.DeleteCommand = ocb.GetDeleteCommand();
        adp.Update(ds, "myuser");这段代码不是太理解高手能帮忙解释下吗特别是        
        adp.UpdateCommand = ocb.GetUpdateCommand();
        adp.DeleteCommand = ocb.GetDeleteCommand();
写在那个位置的原因是什么呢,不太懂

解决方案 »

  1.   

    dataadapter 有多种command 
    insert,update,select,delete
    相当于数据库的增,删,查,改
      

  2.   

    CommandBuilder会默认生成select,update等command方法,
    如果不用的话需要手动写入
      

  3.   

    CommandBuild可以为DataAdapter生成DeleteCommand、InsertCommand 和 UpdateCommand,前提是DataAdapter必须设置SelectCommand。
            OleDbCommandBuilder ocb = new OleDbCommandBuilder(adp); 
    上面这一行已经为adp生成好了命令,后面两行不需要了。如果修改了adp的SelectCommand,就需要那两行。
      

  4.   

    adp.UpdateCommand = ocb.GetUpdateCommand(); //获取updatecommand
    adp.DeleteCommand = ocb.GetDeleteCommand(); //获取deletecommand如果不写这两句也可以.OleDbCommandBuilder会自动生成(成功生成insert,update,delete command的前提是要有主键)