DataSet ds=GetDataList("select  * from article");
  DataRow dr = ds.Tables["table"].NewRow();
  dr["title"]="hubro";
 ds.Tables["table"].Rows.Add(dr);
updatetb(ds,"select  * from article ")
函数说明*****************
public DataSet GetDataList(String str)//返回一个DATASET
    {
OleDbConnection conn=myconntion();
        OleDbDataAdapter myadapter  = new OleDbDataAdapter(str,conn);
        DataSet ds=new DataSet();
        myadapter.Fill(ds);
        conn.Close();
        return ds;
   }
public void updatetb(DataSet ds,string str)//更新DATASET
   {
        OleDbConnection conn=myconntion();
        OleDbDataAdapter myadapter  = new OleDbDataAdapter(str,conn);
OleDbCommandBuilder custCB = new OleDbCommandBuilder(myadapter); 
myadapter.Update(ds);
        conn.Close();
   }
运行结果
INSERT INTO 语句的语法错误。 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 

解决方案 »

  1.   

    OleDbCommandBuilder custCB = new OleDbCommandBuilder(myadapter); 
    // 把 Insert Command Text 打印出来看一下程序先成了什么?
    Trace.Warn("insert", custCB.GetInsertCommand.CommandText);myadapter.Update(ds);
      

  2.   

    楼主帖出的东西不全吧,应该是包含“insert into”的sql语句的语法错误
      

  3.   

    article表有没有主键?
    不过还是习惯自己写
      

  4.   

    要结合使用SqlCommandBuilder
     Dim dadp As New SqlDataAdapter()
        Dim ds As New DataSet()
        Dim dcmd As New SqlCommand()
        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Dim conn As New SqlClient.SqlConnection()
            conn.ConnectionString = "Data Source=sqlserver;User Id=code;pwd=code;Initial Catalog=TRMS"
            conn.Open()
            dcmd.CommandText = "select * from  SECUAL"
            dcmd.Connection = conn
            dadp.SelectCommand = dcmd
            ds.Clear()
            dadp.Fill(ds, "cust")      
            DataGrid1.DataSource = ds.Tables("cust")
            conn.Close()
        End Sub
        Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
            Dim custCB As SqlCommandBuilder = New SqlCommandBuilder(dadp)
            dadp.Update(ds.Tables("cust"))
            ds.AcceptChanges()
        End Sub
      

  5.   

    to:exboy(kuku) 
      “System.Data.OleDb.OleDbCommandBuilder.GetInsertCommand()”表示“方法”
      ,它在给定的上下文中无效
    怎么打引?TO:zldcolin(高级伴读书童) 
    没有INSERT INTO语句TO:brightheroes(闭关|那一剑的风情) 
    ACCESS数据库,有主键to: Jinniu(金牛) 
    不会吧,不用每个字段都得写吧
      

  6.   

    刚才打错了Trace.Warn("insert", custCB.GetInsertCommand().CommandText);