Oracle和事务命名

时间:2011-07-24 15:01:03

标签: oracle transactions ado.net

我已经使用SQL Server和C#进行了一段时间的编程,并且我需要更改一些代码以便与Oracle一起使用:

SqlConnection connection = (SqlConnection)CreateDBConnection();
IDbTransaction transaction = connection.BeginTransaction(level, "name");

问题是:如果我使用OracleConnection而不是SqlConnection,则无法为我的交易指定名称。我知道Oracle中的语法允许命名事务,但我似乎没有找到通过.net代码实现它的方法。

1 个答案:

答案 0 :(得分:0)

您无法设置交易名称。 但是可以为SAVEPOINT指定一个名称。

OracleConnection oracleConnection = new OracleConnection((string.Format("Data Source={0};User Id={1};Password={2}", DATABASE, USERNAME, PASSWORD));
oracleConnection.Open();
OracleCommand oracleCommand = oracleConnection.CreateCommand();
oracleConnection.BeginTransaction();
OracleTransaction oracleTransaction = oracleCommand.Transaction;
oracleTransaction.Save("name");
//...
oracleTransaction.Rollback("name");