【问题标题】:MobileFirst SQL adapter raising an errorMobileFirst SQL 适配器引发错误
【发布时间】:2017-03-08 01:32:48
【问题描述】:

有时我们在调用 sql 适配器时收到以下错误

ORA-06508: PL/SQL: 找不到被调用的程序单元。

所有对象都是有效的/已编译并在 oracle DB 中可用。

如果我们更改 oracle 数据库上的任何包或过程,我们会收到该错误。所以问题是:我们是否需要重新部署再次调用该数据库对象的那个 SQL 适配器?

【问题讨论】:

    标签: oracle mobilefirst-adapters mobilefirst-server


    【解决方案1】:

    发生这种情况是因为您的连接持有指向一个过程的指针,该过程由于重新编译而不再存在于 RAM 中。

    我已经看过很多年了,你可以在飞行中重新创建它。

    1. 调用 Oracle 过程
    2. 重新编译该过程
    3. 再次调用会得到“找不到正在调用的程序单元”。
    4. 再次调用它就会起作用。

    如果您在 #2 之后关闭连接,然后打开连接并调用该过程,您将永远不会收到该错误。

    在您调用该 proc 并完成后,请关闭您的连接,然后再再次调用它。

    【讨论】:

    • 谢谢,这就是我们在 oracle 方面可以做到的方式,但是如何通过 Mobilefirst sql Adapter 来完成,这是主要问题吗?如何在通过mobilefirst sql适配器再次调用之前关闭连接?
    • MichealSmith:我查看了那个 SQL 适配器文档,并且非常监督我没有看到打开/关闭连接,但是他们的 JAVA 适配器有它。我知道关闭/打开解决了这个问题,您可能想联系 IBM 询问如何循环连接。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-08
    • 2015-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多