我想把a插入到ds.Tables[0].Columns[12]列里。不过提示。属性或索引器是只读的,不能赋值。所以编译出错。那如何插入把a插入到ds.Tables[0].Columns[12]列里.前面有一个条件,就是在指定的用户名下插入。  好象没有insert into()  values()  where username ='"+username+"' 语句。有的就好了。。请问下。要如何插入。谢谢!!

解决方案 »

  1.   

    a是一个值,而ds.Tables[0].Columns[12]是一整竖的格子,肯定不可以的.
    要改成某行,某列
      

  2.   

    SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings
                ["ConnStr"].ConnectionString);
    SqlDataAdapter sda = new SqlDataAdapter("select * from A", con);
    SqlCommandBuilder scbld = new SqlCommandBuilder(sda); 
    DataSet ds = new DataSet();
    try
    {
              sda.Fill(ds,"temp");          ds.Tables["temp"].DefaultView.Sort = "id";
                int index = ds.Tables["temp"].DefaultView.Find(id);
                ds.Tables["temp"].Rows[index]["name"] = "";
                int rows = sda.Update(ds,"temp");
    }
    catch{ }
      

  3.   

    a到底是什么?一个值?一列数组?如果是数组的话,可以插入的,ds.Tables[0].columns.add
    如果仅是填充该列的话,就更简单了吧...
    用SQL语句插入列不应该是 insert into 语句,用 alter table add 语句
    也不知道你是不是问的这个意思?
      

  4.   

    数据库中插入数据后,利用for循环来做
    for(int i=0;i<ds.Tables[0].Rows.Count;i++)
    {
       ds.Tables[0].Rows[i]["ColumnName"] = a
    }
    如果有什么条件,就在for循环中加if吧
      

  5.   

    赋值只能对某一个单元格的。而且修改完成后必须使用dataset.accept方法提交更改,否则修改不会起作用的,一定要注意。
      

  6.   

     DataRow[] tmpDr = dtJE.Select("cDepCode='" + c1FG[i, 1].ToString() + "' and pProCode='" + c1FG[i, 3].ToString() + "'");                    if (tmpDr.Length > 0)
                        {
                            //取已计算过的费用
                            tmpDr[0][6] = double.Parse(tmpDr[0][6].ToString()) + iPrice * double.Parse(c1FG[i, 9].ToString());                        //取已计算过的数量
                            tmpDr[0][8] = double.Parse(tmpDr[0][8].ToString()) + double.Parse(c1FG[i, 9].ToString());
                        }