ORACLE建视图 授权的 例子:
A用戶 下有table TabA
A1 用戶建立view (V_TabA) , view中是引用A 用戶下的TabA .
A2 用戶要 select A1 用户下的这个view .
采用直接赋予权限的方式,很可能会碰到错误 ORA-01720: grant option does not exist for ......
一般采取的方法是 :
1. 以基表用户A 登入(如果多个基表,那么多次运行) 或SYS登陆
> connect A/A
sql > grant select on TabA to A1 with grant option ; 允许A1授权给A2
2. 以view 的拥有用户登入
sql> connect A1/A1
sql> grant select on A1.V_TabA to A2 ;
3. OK, 以 A2 登入即可以访问view了
sql > connect A2/A2
sql> select * from A1.V_TabA ;