C# 在C中考虑网格上的更改更新DB上的表#

C# 在C中考虑网格上的更改更新DB上的表#,c#,datagrid,datatable,sql-update,odp.net,C#,Datagrid,Datatable,Sql Update,Odp.net,我正在通过System.Data.DataTable在C#(WinForms)中填充数据网格数据表通过ODP从DB表填充 我在数据网格中有一个数据导航器,用于更新、删除和插入行 我想使用DataTable将数据网格中所做的所有更改提交到数据库 我必须使用OracleDataAdapter,但我不知道如何实现这一点 我应该使用哪种命令文本来实现这三个命令(更新,删除,插入) 下面的代码不起作用(可能是因为插入的CommandTextI不合适) 对于insert,请在数据表中创建新行并插入到数据表中

我正在通过
System.Data.DataTable
在C#(WinForms)中填充
数据网格<代码>数据表
通过
ODP
DB表
填充

我在
数据网格
中有一个
数据导航器
,用于更新、删除和插入行

我想使用
DataTable
数据网格中所做的所有更改提交到数据库

我必须使用
OracleDataAdapter
,但我不知道如何实现这一点

我应该使用哪种
命令文本
来实现这三个命令(
更新
删除
插入

下面的代码不起作用(可能是因为插入的
CommandText
I不合适)


对于insert,请在数据表中创建新行并插入到数据表中;对于update,请更新值并最终保存数据集或数据表的更改;对于ORACLECOMANDBuilder,请在插入
select
查询后生成相应的
insert
update
delete
查询

string selectCommand = "select * from Table";
oracleDataAdapter.SelectCommand = new OracleCommand(selectCommand, m_Connection);
OracleCommandBuilder cmdBuilder = new OracleCommandBuilder(oracleDataAdapter);
DataTable dataTable = new DataTable();
oracleDataAdapter.Fill(dataTable);
OracleCommandBuilder
以这种方式构建命令后,您可以执行
数据表中的任何更新,如下所示:

oracleDataAdapter.Update(dataTable);

序列、虚拟列等是不允许的。

是的,但是
CommandText
是什么样的,我想知道我的
#ExecuteNonQuery(…)
方法是否适用于此目的?
oracleDataAdapter.Update(dataTable);