weblogic或其他配置是否会影响oracle table功能的使用?
Can weblogic or other config affect the use of oracle table function?
我在使用oracle table函数的时候遇到了一个奇怪的问题
两种环境:本地和远程,代码相同,只是一些配置不同,它们共享同一个数据库。 oracle table 函数可以在我的本地环境中完美运行,但即使我只是尝试使用一个非常简单的 table 函数,远程也会出现错误。
create type V as table of varchar2(4000);
/
CREATE FUNCTION test2 RETURN v IS
BEGIN
RETURN v('a', 'b');
END test2;
/
我在plsql中使用下面进行测试,这里出现invalid identifier错误
select * from table(Test2());
ORA-00904: : invalid identifier
同样奇怪的是,标识符名称应该是错误消息的一部分,但它不存在。仅查询就可以在 plsql developer 中很好地工作。而Test2函数如果不在table函数中使用,在本地和远程都可以正常工作。
本地和远程的代码是一样的。只有 weblogic 配置、jdbc 驱动程序版本等可能不同。除了两者共享的数据库外,我无法访问远程环境。我试图在线搜索问题,但没有找到答案。所以我希望在座的一些成员能够阐明这个问题。非常感谢任何帮助。
db和weblogic版本:
Oracle 数据库 11g 企业版发布 11.2.0.2.0 - 64 位生产
应用程序服务器 - Weblogic 10.3.3.0
ps: 我在community.oracle.com上看到有人发了一个类似的问题,但是还没解决。
https://community.oracle.com/thread/2503982
嗯,我错了。原来是权限问题
在 运行 sql 之后,问题解决了。
授予在 "DB_USERNAME"."TEST" 上执行到 "DB_USERNAME_USER";
我在使用oracle table函数的时候遇到了一个奇怪的问题
两种环境:本地和远程,代码相同,只是一些配置不同,它们共享同一个数据库。 oracle table 函数可以在我的本地环境中完美运行,但即使我只是尝试使用一个非常简单的 table 函数,远程也会出现错误。
create type V as table of varchar2(4000);
/
CREATE FUNCTION test2 RETURN v IS
BEGIN
RETURN v('a', 'b');
END test2;
/
我在plsql中使用下面进行测试,这里出现invalid identifier错误
select * from table(Test2());
ORA-00904: : invalid identifier
同样奇怪的是,标识符名称应该是错误消息的一部分,但它不存在。仅查询就可以在 plsql developer 中很好地工作。而Test2函数如果不在table函数中使用,在本地和远程都可以正常工作。
本地和远程的代码是一样的。只有 weblogic 配置、jdbc 驱动程序版本等可能不同。除了两者共享的数据库外,我无法访问远程环境。我试图在线搜索问题,但没有找到答案。所以我希望在座的一些成员能够阐明这个问题。非常感谢任何帮助。
db和weblogic版本:
Oracle 数据库 11g 企业版发布 11.2.0.2.0 - 64 位生产
应用程序服务器 - Weblogic 10.3.3.0
ps: 我在community.oracle.com上看到有人发了一个类似的问题,但是还没解决。 https://community.oracle.com/thread/2503982
嗯,我错了。原来是权限问题
在 运行 sql 之后,问题解决了。
授予在 "DB_USERNAME"."TEST" 上执行到 "DB_USERNAME_USER";