我试了两种写法,都是一样的毛病:不报错,但查数据库里就是没写进去...
最好是能指出我代码的错误,而不要写一个正确但一点也不一样的写法... 多谢各位SqlConnection conn=new SqlConnection("server=127.0.0.1;database=FD000;uid=sa;pwd=");
            conn.Open();
            SqlCommand cmd = new SqlCommand("select * from BAS_CODE_LEN", conn);            //第1种
            SqlDataAdapter da = new SqlDataAdapter(cmd);
            da.InsertCommand = new SqlCommandBuilder(da).GetInsertCommand();
            DataTable dt = new DataTable();
            da.Fill(dt);
            DataRow dr = dt.NewRow();
            dr[1] = "1";
            dr[4] = "2";
            da.Update(dt);            //第2种
            DataSet ds = new DataSet();
            da.Fill(ds);
            dr= ds.Tables[0].NewRow();
            dr[1] = "1";
            dr[4] = "2";            da.Update(ds);

解决方案 »

  1.   

    最后必须执行
    da.InsertCommand.ExecuteNonQuery();
      

  2.   

    不过
    我觉得你的sql没有写操作啊
    是select啊
    大哥
      

  3.   

    如果是更新
    你应该写一个UpdateCommand才行
      

  4.   

    已经有写操作了... 
    da.InsertCommand = new SqlCommandBuilder(da).GetInsertCommand();而且如你所说,
    da.InsertCommand.ExecuteNonQuery();
    的话,和我直接用Command写Insert语句一样的了,何必用DataAdapter呢... 按我的理解,da.Update(ds);时就应该执行插入了吧
      

  5.   

    try..DataRow dr = dt.NewRow();
                dr[1] = "1";
                dr[4] = "2";
    ->>>>DataRow dr = dt.NewRow();
                dr[1] = "1";
                dr[4] = "2";
    dt.Add(dr);
      

  6.   

    多谢liujia_0421(SnowLover) ,是我对NewRow方法的理解有错误!DataRow.NewRow()  //创建与该表具有相同架构的新 DataRow。