我在我们的 oracle 数据库中有两个用户 - schema1 和 schema 2。
我在schema1中创建了一个表和同义词如下
创建表测试(用户 varchar2(25));
为 schema1.test 创建或替换同义词 schema2.test
当我尝试从我们的开发和生产环境之间的 schema2 查询测试表时,我观察到了行为的差异。
select * from test
在我们的开发环境中没有抛出任何错误。
但是当我在生产中运行相同的命令时,schema2 的权限不足错误。我必须在生产中将测试表的 select 授予显式授予 schema2。
为什么在开发环境和生产环境之间会出现这种差异?
创建同义词是否会自动授予对 oracle 中基础表的选择访问权限?