private void toolStripButton1_Click(object sender, EventArgs e)
        {
            this.Validate();
            this.eSAnalysisInfoBindingSource.EndEdit();
            this.eS_AnalysisInfoTableAdapter.Update(this.examSystemDataSet.ES_AnalysisInfo);
            examSystemDataSet.ES_AnalysisInfo.AcceptChanges();
        }我的datanavigator种没有saveItem,我添加了一个toolStripButton,代码这样写的,在调试完后,发现数据库中数据没有更改,但是窗体中的更改了,不知道为什么,应该怎么改啊?请教请教…………

解决方案 »

  1.   

    你是否为SqlDataAdapter定义了更新的语句,如果没有,你可以使用SqlCommandBuilder来自动为你生成:
    SqlCommandBuilder sqlCmdBuilder=new SqlCommandBuilder (sqlDa);
    然后再update,就可以了。我的分析是你对表执行了AcceptChanges,所以窗体的内容会变化,但是你没有设置更新的逻辑,所以数据库的内容没有被更新。你试试看吧。
      

  2.   

    AcceptChanges这各没加的时候也是这样的
      

  3.   

    错误 5 找不到类型或命名空间名称“SqlCommandBuilder”(是否缺少 using 指令或程序集引用?) D:\我的文档\Visual Studio 2005\Projects\WindowsApplication2\WindowsApplication2\Form1.cs 94 51 WindowsApplication2
    这个怎么搞嘞
      

  4.   

    加了client引用和SqlCommandBuilder后系统发生重引用错误
      

  5.   

    DataSet ds = new DataSet();
    SqlDataAdapter sda;SqlCommandBuilder scb = new SqlCommandBuilder(sda);
    sda.Update(ds);
    this.dataGridView1.DataSource = ds.Tables[0];
      

  6.   

    郁郁的问题!是应为在SQL表里没刷新!
    点击右键-》执行!
    OK