文档解释
ORA-39824: The OCI_ATTR_DIRPATH_USE_ACTIVE_TRANS attribute was set when no transaction was active.
Cause: There was no active transaction to use.
Action: Start a transaction or do not set the attribute OCI_ATTR_DIRPATH_USE_ACTIVE_TRANS to TRUE.
。
当没有活动的事务时,将OCI_ATTR_DIRPATH_USE_ACTIVE_TRANS属性设置为真,就会引发ORA-39824错误,官方解释是,所请求的操作必须有一个活动事务才行。
常见案例是在使用dirpath构建重复组技术时,程序会抛出ORA-39824,因为对于类型为OCI_DTYPE_DIRPATH_CB的OCIDirPathColArrayEntry结构体,需要在准备文件处理阶段设置OCI_ATTR_DIRPATH_USE_ACTIVE_TRANS属性,以便允许在使用和处理重复组元素时使用Active Transaction,否则就会产生该错误。
一般处理方法及步骤
(1)在调用OCIDirPathPrepare之前,需要使用OCIStart()开启一个活动的事务,并将OCI_ATTR_DIRPATH_USE_ACTIVE_TRANS属性设置为true来显式启用事务处理;
(2)然后使用OCIDirPathPrepare()预处理;
(3)使用OCIDirPathLoadStream()加载和处理OCIDirPathColArrayEntry结构体;
(4)最后,使用OCIDirPathFinish()完成处理;
(5)OCICommit()提交事务。
香港美国云服务器首选树叶云,2H2G首月10元开通。
树叶云(shuyeidc.com)提供简单好用,价格厚道的香港/美国云服务器和独立服务器。IDC+ISP+ICP资质。ARIN和APNIC会员。成熟技术团队15年行业经验。
文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/256668.html<

