connection1.ConnectionString ="Data Source=.;Initial Catalog=MyDB;Integrated Security=True";
                string sql = "select * from Customers";
                adapter.SelectCommand.CommandText = sql;
                adapter.SelectCommand.Connection = connection1;
                connection1.Open();
                adapter.SelectCommand.ExecuteNonQuery();
                adapter.Fill(table1);
                connection1.Close();     
  DataRow row = table1.NewRow();
            row["CustomerID"]=this.textBox1.Text;
            row["CompanyName"]=this.textBox2.Text;
            row["ContactName"]=this.textBox3.Text;
            row["ContactTitle"]=this.textBox4.Text;
            row["Address"]=this.textBox5.Text;
            row["City"]=this.textBox6.Text;
            row["Region"]=this.textBox7.Text;
            row["PostalCode"]=this.textBox8.Text;
            row["Country"]=this.textBox9.Text;
            row["Phone"]=this.textBox10.Text;
            row["Fax"] = this.textBox11.Text;
       table1.Rows.Add(row);
            可是添加不进去,高手帮我看下呢
或则用别的方法,大家也可以用别的方法帮我改下,小弟在此谢谢

解决方案 »

  1.   

    把你的SQL文用 "update .................." 试试....
    另外table1.Rows.Add(row); 只是往内存中的Table里加一条数据而已....
      

  2.   

    没有UPdate 回数据库 只是往DataTable里加了一行而已 不行的 要用adapter.update()方法更新回数据库
      

  3.   

    不可以阿,用了这句adapter.update()的话就会出错
    出错提示为:当传递具有新行的DataRow 集合时,更新要求有效的InsertCommand!帮我看下啊
      

  4.   

    增加一个
    Table table1 = new Table();
      

  5.   

    需要设置adapter的InsertCommand属性
    adapter.InsertCommand.CommangText=
    "INSERT INTO Customers  (CustomerID,CompanyName,ContactName) 
                            (@CustomerID, @CompanyName, @ContactName)";
      

  6.   

    用adapter.update()更新前。table1中每笔记录都会有个属性标明是insert、update或delete
      

  7.   

    connection1.ConnectionString   ="Data   Source=.;Initial   Catalog=MyDB;Integrated   Security=True"; 
                                    string   sql   =   "select   *   from   Customers"; 
                                    adapter.SelectCommand.CommandText   =   sql; 
                                    adapter.SelectCommand.Connection   =   connection1;
                                    //这行 
                                    Dim builder As SqlCommandBuilder = New SqlCommandBuilder(adapter);
                                    connection1.Open(); 
                                    adapter.SelectCommand.ExecuteNonQuery(); 
                                    adapter.Fill(table1); 
                                    connection1.Close();      
      DataRow   row   =   table1.NewRow(); 
                            row["CustomerID"]=this.textBox1.Text; 
                            row["CompanyName"]=this.textBox2.Text; 
                            row["ContactName"]=this.textBox3.Text; 
                            row["ContactTitle"]=this.textBox4.Text; 
                            row["Address"]=this.textBox5.Text; 
                            row["City"]=this.textBox6.Text; 
                            row["Region"]=this.textBox7.Text; 
                            row["PostalCode"]=this.textBox8.Text; 
                            row["Country"]=this.textBox9.Text; 
                            row["Phone"]=this.textBox10.Text; 
                            row["Fax"]   =   this.textBox11.Text; 
           table1.Rows.Add(row);
                 // 
                 adapter.update();
      

  8.   

    adapter的SelectCommand,UpdateCommand,InsertCommand全设上,他会根据你的Row的状态调用不同的sql语句的。你的没有设,所以会报错。