你试试添加适配器的插入命令
adapter.insertCommand = "insert into .....";

解决方案 »

  1.   

    OleDbCommand InsertCommand = new OleDbCommand();
    InsertCommand = "insert into ....";  //...省略InsertCommand的属性设置,你去查一下资料插入的参数怎么设置,问题应该就出在这了
    adapter.InsertCommand = InsertCommand;
      

  2.   

    你不用DataSet来更新数据,直接用适配器的insertCommand命令很方便的,给你个实例看看,不过是sql server的,你把Sql改成OleDb就行了,原理一个样SqlConnection conn = new SqlConnection(strConn);
                conn.Open();
                SqlDataAdapter adp = new SqlDataAdapter();            //创建一个往MSSQL里插入数据的Command,并赋给Adapter
                SqlCommand cmd1 = new SqlCommand("Insert into tblEntity(Entity_Id,Entity_Name) Values(@Entity_Id,@Entity_Name)", conn);
                adp.InsertCommand = cmd1;            //设置Insert命令的参数与相应的字段,如下:@Entity_Id是参数,Entity_Id是DataSet中的字段名
                adp.InsertCommand.Parameters.Add("@Entity_Id", SqlDbType.Char, 10, "Entity_Id");
                adp.InsertCommand.Parameters.Add("@Entity_Name", SqlDbType.VarChar, 50, "Entity_Name");            //执行UPDATE,更新数据
                adp.Update(ds1);
      

  3.   

    利用Access数据库的时候,连接字符串部分的设置一定要包含mode=readwrite属性部分,默认是readonly.这也是能够查询不能够更新、删除、插入的问题所在,希望能够帮助你
      

  4.   

    //请细看
    OleDbConnection conn = new OleDbConnection(ConfigurationSettings.AppSettings["AccessConnString"]); //创建连接
                OleDbDataAdapter adapter = new OleDbDataAdapter("select * from prizeConfig",conn); //创建adapter
                DataSet ds = new DataSet();  //创建DataSet对象
                adapter.Fill(ds);            //把查询数据填充到数据集ds中            DataRow dr = ds.Tables[0].NewRow(); 
                dr["prizeName"] = "aa"; 
                ds.Tables[0].Rows.Add(dr);             //更新
                OleDBCommandBuilder builder=new OleDBCommandBuilder (adapter);
                adapter.Update(ds);
      

  5.   

        public static readonly string DBDriver = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source =";
        private static string DBConnectionString = (DBDriver + access全路径+access文件名);
        public static void DoSql(string sql)
        {
            OleDbConnection connection = new OleDbConnection();
            connection.ConnectionString = DBConnectionString;
            connection.Open();
            new OleDbCommand(sql, connection).ExecuteNonQuery();
            connection.Close();
        }
    sql放什么就执行什么!不返回结果!使用DDL