我在软件包中有一个函数,我想在另一个模式中访问该函数。 我已经将程序包的执行权授予了另一个架构,但是我无法使用该程序包的功能。
# generate test data with NA values
test_df <- iris
test_df[c(1, 3, 7), ] <- NA
# write the file
write.xlsx(test_df, file = "test.xlsx",
keepNA = TRUE)
现在,我想以其他架构访问Package PKG_Test is FUNCTION FUN_TESTING(x IN VARCHAR2) RETURN VARCHAR2; End;
。
答案 0 :(得分:1)
我遇到了错误
ORA-00904:---------- 00904. 00000 - "%s: invalid identifier" *Cause: *Action: –
您需要授予其他用户执行程序包的权限:
GRANT EXECUTE ON PKG_test TO other_user;
然后OTHER_USER
可以通过在函数名称前添加模式名称和程序包名称来调用它:
BEGIN
DBMS_OUTPUT.PUT_LINE( OWNING_USER.PKG_TEST.FUN_TESTING( 1 ) );
END;
/