使用 ODP.NET 时是否有一种简单的方法可以禁用自动提交?我想使用 SET TRANSACTION 命令开始事务,而不是使用 Connection.BeginTransaction 和 TransactionScope。此外,我希望任何 DML 启动事务(如果尚未启动)但在发出 COMMIT 命令之前不提交更改。我知道其他 Oracle 提供程序(JDBC 或 Devart)支持这一点,但我想用 ODP.NET 实现相同的行为。
我还发现在 ODP.NET 的托管版本中可能存在私有字段,但它隐藏在难以通过 OracleConnection 实例访问的物理连接的实现中。在非托管版本中,此设置似乎也在 Oracle.DataAccess.dll 程序集之外。