【问题标题】:Importing a stored procedure from oracle to Informatica将存储过程从 oracle 导入 Informatica
【发布时间】:2012-09-14 06:11:58
【问题描述】:

我必须将存储过程从 Oracle 数据库导入 Informatica。 但是当我尝试使用存储过程转换时,我无法查看相应的存储过程。 我正在使用正确的 oracle 驱动程序,因为我在导入目标数据库表时没有任何问题。 我尝试使用查看 oracle 数据库中的存储过程 select * from all_objects where object_type='FUNCTION' 但找不到 我正在寻找的功能。 请就这些问题给我建议:

  • 能否查看Oracle中存储过程/函数的列表和代码

  • 我在 Informatica 存储过程转换中缺少什么?

【问题讨论】:

    标签: oracle stored-procedures oracle10g informatica-powercenter informatica


    【解决方案1】:

    如果你没有得到任何结果..

    select * from all_objects where object_type='FUNCTION'
    

    这要么意味着您没有任何功能,要么当前用户没有执行任何功能的权限。找出哪个用户拥有该功能并授予以下权限。

    例子:

    grant execute on <owner>.<function_name> to ETL_USER;
    

    为避免混淆,请确保 informatica 连接中的用户名与您连接数据库时使用的用户名相同。

    【讨论】:

      【解决方案2】:
      1. 将对象导入 Informatica 时,列出的对象始终归“连接”用户所有。如果您的对象由其他用户拥有,您将看不到它。要查看不属于连接用户的对象,您必须在连接时在架构文本框中选择“全部”。

      2. 您应该寻找 object_type='PROCEDURE' 而不是“FUNCTION”。因此,您的查询应为select * from all_objects where object_type='PROCEDURE'

      3. 如果所有这些都完成了,但您仍然看不到该对象,请检查您的连接用户对该对象的权限。为此,最好的课程是 一种。要求您的 dba 将该对象的执行权限授予您的连接用户。要么 湾。以该对象的所有者身份连接到数据库并运行以下命令 grant execute on &lt;object_name&gt; to &lt;connecting_user&gt;

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-10-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-12-21
        • 2011-11-07
        相关资源
        最近更新 更多