public void InsertData(CData sData) { OleDbConnection conn = new OleDbConnection(connectionString); DataRow row; DataSet oDataSet = new DataSet(); DataTable table = new DataTable(); ; try { conn.Open(); table.TableName = "tblData"; OleDbDataAdapter oDataAdapter = new OleDbDataAdapter("select * from tblData", conn); OleDbCommandBuilder cmdBuilder = new OleDbCommandBuilder(oDataAdapter); oDataAdapter.MissingSchemaAction = MissingSchemaAction.AddWithKey; oDataAdapter.InsertCommand = cmdBuilder.GetInsertCommand(); oDataAdapter.Fill(oDataSet, "tblData"); row = oDataSet.Tables["tblData"].NewRow(); #region Columns //row["Ave_Nitrate_Level"] = sData.Ave_Nitrate_level; using this format for all coulmns. sData is an instantiation of a class containing fileds and properties for each column in the row. oDataSet.Tables["tblData"].Rows.Add(row); oDataAdapter.Update(oDataSet, "tblData"); } catch(OleDbException e) { string errMsg = e.Message; } if(conn.State == ConnectionState.Open) conn.Close(); }