当前位置:编程学习 > C#/ASP.NET >>

在C#中如何加入语句让临时表空间的临时LOB对象可以释放空间


OracleCommand moracmd = new OracleCommand();
moracmd.Connection = getMainOraConnection();
moracmd.Transaction = oraTranMain; //挂事务
OracleParameter op = new OracleParameter("pb", OracleType.Clob);
op.Value = xmldata;
moracmd.Parameters.Add(op);
//这里如何加入?
moracmd.ExecuteNonQuery();


上述程序执行会导致临时表空间不断增长,因为在临时表空间的段不释放,导致PGA中相应的LOB CTL STRUCT 也不释放。
临时表空间与PGA都持续增加。

解决办法是在代码中加入如下语句:
dbms_lob.freetemporary(clb);
这样临时表空间的临时LOB对象可以释放空间,供同一会话使用。
--------------------编程问答-------------------- 楼主自问自答,我接分。 --------------------编程问答-------------------- 现在问题是如何加入?
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,