C# TransactionScope内连续两次OracleDataAdapter更新
我需要执行一些插入指令,将类型化数据集插入到Oracle数据库中的一组表中 我会这样做:C# TransactionScope内连续两次OracleDataAdapter更新,c#,.net-2.0,odp.net,C#,.net 2.0,Odp.net,我需要执行一些插入指令,将类型化数据集插入到Oracle数据库中的一组表中 我会这样做: OracleDataAdapter da1 = new OracleDataAdapter(); da1.InsertCommand = previouslyInitializedCommand; OracleDataAdapter da2 = new OracleDataAdapter(); da2.InsertCommand = anotherCommand() ... using (Transact
OracleDataAdapter da1 = new OracleDataAdapter();
da1.InsertCommand = previouslyInitializedCommand;
OracleDataAdapter da2 = new OracleDataAdapter();
da2.InsertCommand = anotherCommand()
...
using (TransactionScope ts = new TransactionScope())
using (OracleConnecction conn = new OracleConnection(connString))
{
da1.InsertCommand.Connection = conn;
da2.InsertCommand.Connection = conn;
da1.Update(dataset.Table1);
da2.Update(dataset.Table2);
ts.Complete();
}
第二次更新从未发生,因为第一次更新将表2的行状态更改为“未修改”。有人知道为什么会这样吗?现在它可以工作了
我做了两件事:
Table1
和Table2
之间是否存在任何关系?@AlexFilipovici是的,Table1和Table2通过具有级联约束的数据关系连接。Table1和Table2
之间是否存在任何关系?@AlexFilipovici是的,Table1和Table2通过具有级联约束的数据关系连接。