Heim >Datenbank >MySQL-Tutorial >Oracle创建视图view权限不足问题剖析

Oracle创建视图view权限不足问题剖析

WBOY
WBOYOriginal
2016-06-07 17:30:081222Durchsuche

使用USER1等其他用户登录Oracle以后,创建视图,提示ldquo;权限不够rdquo;,怎么解决?这是因为USER1这个帐户目前没有创建视图

问题:

使用USER1等其他用户登录Oracle以后,创建视图,提示“权限不够”,怎么解决?

这是因为USER1这个帐户目前没有创建视图的权限。

解决方法为:

首先使用system帐户进行登录

然后执行:

grant create any view to USER1

提示:授权成功。

再使用USER1登录就可以创建视图了。

如果还是问题还是没有解决:

即便是
 
grant dba to USER1;
 
grant dba to USER2;


可能还会报这种错误,那么就按下面的方法即可实现创建视图:
 

如果用户USER1创建视图时,视图语句包含有USER2中的表,那么需要在USER2登陆的会话窗口中对USER1赋予创建的权限。
 
如果用户USER2创建视图时,视图语句包含有USER1中的表,那么需要在USER1登陆的会话窗口中对USER2赋予创建的权限。
 
附录:如果以上方法不能解决您的问题,可以尝试以下方法。记录下来。便于记忆:
 
  描述:
 
  同一个数据库:DB1
 
  两个自定义用户:分别为 USER1、USER2
 
  在USER1创建视图,其中试图内包含USER2中的表。 提示“权限不足”
 
  执行以下SQL,根据自己用户不同需修改使用:
 
  --为USER1授权
 
  GRANT CREATE ANY TABLE TO USER1;
  GRANT SELECT ANY TABLE TO USER1;
  GRANT COMMENT ANY TABLE TO USER1;
  GRANT LOCK ANY TABLE TO USER1;
  GRANT SELECT ANY DICTIONARY TO USER1;
 
 
  --为USER2授权
 
  GRANT CREATE ANY TABLE TO USER2;
  GRANT SELECT ANY TABLE TO USER2;
  GRANT COMMENT ANY TABLE TO USER2;
  GRANT LOCK ANY TABLE TO USER2;
  GRANT SELECT ANY DICTIONARY TO USER2;

相关阅读:解决Oracle创建视图(VIEW)权限不足的方法

linux

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn