ORA-02089: COMMIT不允许在附属会话中

wolong_cai 2002-06-11 11:18:21
我在COM+的事务环境中调用DDL语句,如create table,就出现如下错误:
ORA-02089: COMMIT不允许在附属会话中
我在一些E文论坛中看到过这个问题,但没人回答。
请问哪位大侠遇到过,怎么解决?
...全文
2150 5 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
biti_rainy 2002-06-12
  • 打赏
  • 举报
回复
你的 附属会话是什么意思?

为了事务的完整性
是可能有这样的情况的
比如一个会话中发起了另一个会话
或者在分布式处理中?

但是,通过隔离级别的处理,应该能实现你的需求
wolong_cai 2002-06-12
  • 打赏
  • 举报
回复
用execute immediate还是不行,报同样的错。
IronPromises 2002-06-11
  • 打赏
  • 举报
回复
DDL语句不能在事务中出现!
因为DDL语句带有显式的commit
而这在事务中是不允许的。

如果你非要在事务中使用DDL语句的话。
那么请用dbms_sql包或者execute immediate 来执行DDL语句。
bzszp 2002-06-11
  • 打赏
  • 举报
回复
ORA-02089 COMMIT is not allowed in a subordinate session

Cause: COMMIT was issued in a session that is not the two-phase commit global coordinator.

Action: Issue commit at the global coordinator only.
bzszp 2002-06-11
  • 打赏
  • 举报
回复
ORA-02089 COMMIT is not allowed in a subordinate session

Cause: COMMIT was issued in a session that is not the two-phase commit global coordinator.

Action: Issue commit at the global coordinator only.

2,598

社区成员

发帖
与我相关
我的任务
社区描述
Sybase相关技术讨论区
社区管理员
  • Sybase社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧