在甲骨文中,当我执行我的包时,我会得到错误:
ORA-01031:特权不足
我的用户有dba管理角色。
myPackage in mySchema.但是表在模式上是不同的。
我尝试了下面的脚本,但没有解决我的问题。
grant execute on mySchema.myPackage to otherSchema;谢谢你的兴趣。
execute
mySchema.myPackage.disabledTableConstraint(otherSchema.table_Cons);发布于 2019-01-03 00:41:32
在PL/SQL中,通过角色授予的特权并不重要。默认情况下,包使用定义器的权限执行,这意味着它们使用拥有模式的权限执行。
看起来,mySchema试图在otherSchema中禁用一个约束,因此这基本上就好像您以mySchema身份登录并尝试这样做:
alter table otherSchema.someTable disable constraint myconstraint;听起来,mySchema对otherSchema没有特权。您可以:
ALTER TABLE特权从otherSchema授予mySchema。你得一桌一桌地做这个。ALTER ANY TABLE系统特权授予mySchema。这可能很危险。AUTHID CURRENT_USER条款使程序调用者的权利。这将使过程以调用它的模式的特权运行,在本例中是otherSchema。https://stackoverflow.com/questions/54007068
复制相似问题