您的位置:首页 > 数据库 > Oracle

.NET中访问Oracle数据库链接:ORA-02041: client database did not begin a transaction 问题的处理。

2005-12-17 00:25 579 查看
[align=left].NET中访问Oracle中带有DB_LINK时对象时,会抛出一下异常[/align][align=left]ORA-02041: client database did not begin a transaction[/align][align=left]意思是要设置一个事务,但是简单的BeginTransaction[/align][align=left]好像并不能解决问题,以下是解决的代码(针对只读情况,更新操作未作试验):[/align][align=left][/align][align=left][/align][align=left]OracleCommand command = new OracleCommand();[/align][align=left] oracleConnection1.Open();[/align][align=left] command.Connection = oracleConnection1;[/align][align=left] command.Transaction = oracleConnection1.BeginTransaction(IsolationLevel.ReadCommitted); [/align][align=left] command.CommandText = "SET TRANSACTION READ ONLY";[/align][align=left] OracleDataReader oraDr = command.ExecuteReader();[/align][align=left] command.CommandText = "select * from DGIS_SP_MIS_WORKFLOW";[/align][align=left] [/align][align=left] //command.Connection = oracleConnection1;[/align][align=left] //command.Transaction = oracleConnection1.BeginTransaction();[/align][align=left] oraDr = command.ExecuteReader(CommandBehavior.CloseConnection);[/align][align=left] command.Transaction.Commit();[/align][align=left] while (oraDr.Read() == true) [/align][align=left] {[/align][align=left] listBox1.Items.Add(oraDr.GetString(0));[/align] }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐