views调用不同数据库上的函数,但crystal报告“无效标识符”错误

时间:2015-06-16 16:11:00

标签: oracle crystal-reports

我在架构(general_schema)中的数据库(database1)上创建了一个视图(generic_view)。此视图中的一列由一个函数(generic_function)填充,该函数存储在同一模式中但存储在不同的数据库(database2)中。我正在调用函数:

general_schema.generic_function@database2(param1, param2, ... paramN) AS function_column

视图和函数都编译,视图生成function_column函数的数据。当我尝试在水晶报表中使用此视图生成报表时,会出现此问题。当我尝试添加视图时,我收到错误: ORA-00904:“general_schema”。“generic_function”:标识符无效

我尝试删除函数中的所有内容,以便函数只返回0,但这似乎没有帮助。

我是在调用这个函数错了吗?

1 个答案:

答案 0 :(得分:1)

架构名称在不同数据库中是相同的并不意味着它们是相同的架构。您需要在database1中设置数据库链接以允许访问database2,然后在database2中您需要确保用户指定在数据库链接中已被授予对general_schema.generic_function的EXECUTE访问权。

祝你好运。