OracleDataAdapter adapter = new OracleDataAdapter();
OracleCommand cmmSelect = new OracleCommand();
OracleTransaction tran = null;
OracleCommandBuilder cmd = new OracleCommandBuilder(adapter);
cmd.QuotePrefix = "[";
cmd.QuoteSuffix = "]";
try
{
Open();
tran = con.BeginTransaction();
cmmSelect.Connection = con;
cmmSelect.Transaction = tran;
cmmSelect.CommandText = "select " + sqlList + " from " + dt.TableName;
adapter.SelectCommand = cmmSelect;
adapter.Update(dt);
tran.Commit();
}

解决方案 »

  1.   

    你这是查询填充DataTable对象,不是修改。
    填充了DataTable对象后,在数据窗口(datagridview)中对数据修改了,才可以提交更新数据库。像这样用
    检索: 
    OleDbDataAdapter oda = new OleDbDataAdapter(“sql语句”, conn); 
    DataTable dt = new DataTable(); 
    oda.Fill(dt); 
    dataGridView1.DataSource = dt; 更新提交数据库: 
    OleDbCommandBuilder commandBuilder = new OleDbCommandBuilder(oda); 
    oda.Update(dt);