ms access pass through 查询调用过程挂起

Ms access pass through query that calls a procedure hangs

我在 oracle 中有一个过程,当来自 oracle 运行 时,运行 大约需要 40 分钟。 我在 ms 访问中有一个传递查询,看起来像这样

Begin MyProcedure; End;

这个确切的代码 运行s 在 oracle 中很好,但在 MS 访问中挂起。我不知道它是否会完成,已经进行了 6 个小时,我想它是否完成并不重要,这是不可接受的。 有人可以解释 运行 从 Oracle 和 MS 访问中获取它之间的区别以及我如何解决这个问题

我假设 MyProcedure 是一个 Oracle 存储过程。

如果是这样,我建议您包括登录。如何?创建一个自治事务过程(以便它可以将日志记录信息插入某些 log table 并提交)并从 MyProcedure 调用它,例如在它的每个语句之前调用它包含(一些令人讨厌的选择、更新等)。这样做,您将能够跟踪 MyProcedure 的执行并查看花费了那么多时间。

除此之外,查看是否有未提交(或回滚)的事务保存某些行(tables?)locked 所以 - 当您调用 MyProcedure - 它等待另一个会话提交(或回滚)以便能够继续执行。