程序员人生 网站导航

Oracle创建视图显示无权限

栏目:数据库应用时间:2015-08-05 07:38:51

问题:使用scott登录Oracle以后,创建视图,提示“权限不够”,怎样解决?
       回答:
       这是由于scott这个帐户目前没有创建视图的权限。解决方法为:
       首先使用system帐户进行登录,其中“tigertiger”为安装Oracle时所指定的密码(可修改):
       sqlplus system/tigertiger
       然后履行:
           grant create any view to scott
      提示:授权成功。
      履行:
        exit
     退出当前system帐户。

再使用sqlplus登录就能够创建视图了,如:
       sqlplus scott/tigert
       下面创建1个最简单视图:
       create or replace view v1
       as
      select * from t1;

 

有时候上面的方法还是没法解决问题,就使用下面的方法:

--创建视图权限,1般网上找都是说的这句,但是光有这句还是没法创建 
grant create  view to B; 

--授与查询权限 
grant select any table to B; 

--授与权限 
grant select any dictionary to B; 

附录:如果以上方法不能解决您的问题,可以尝试以下方法。 反正我的问题是解决了,记录下来。害我找大半天;

 

描写:

同1个数据库: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;

------分隔线----------------------------
------分隔线----------------------------

最新技术推荐