`

建立视图时引用其他用户下的表出错

阅读更多

以用户user1登录,在自己的模式下建立视图v1,引用user2下的表t1: create view v1 as select * from user2.t1;
   提示错误:表或视图不存在。
   单独执行 select * from user2.t1; 可以查询出结果,说明该表存在且有权限访问。
   user1具有connect、resource、dba的权限。

 

user1能够 select * from user2.t1 是因为它有select from any table 的system privilege。 而
要create view as select from user2.t1 则看来是需要有object privilege. 这个就是能用user2来
grant select on t1 to user1才能做到。 然后create view就可以成功。

 

select any table 的权限不就包括了select on user2.t1吗?
user1的select any table权限是通过dba角色授予的,我知道通过角色授予的权限在存储过程中无效,是不是在创建视图时也无效呢?

 

"是不是在创建视图时也无效呢"
是的!
你可以看SQL REFERENCE之CREATE VIEW
The owner of the schema containing the view must have the privileges necessary to
either select, insert, update, or delete rows from all the tables or views on which the
view is based. The owner must be granted these privileges directly, rather than
through a role.

分享到:
评论

相关推荐

    EXCEL百宝箱8.0终极版

    【环境设置】:设置工作表界面视图,控制各项目的显示与隐藏 【修改文件时间】:随心所欲修改文件的创建时间 【按颜色汇总】:按背景色对选区的数据合类合计 【反向选择】:选择当前区域中未选择的区域 【千年日历】:...

    Toad 使用快速入门

    例如,当我们点一个数据库的表,所有和此表相关的索引、约束、存储过程、SQL语句以及和其他表的相互引用关系都在同一界面显示出来。为了简化操作,用户可以在浏览窗口操作数据库对象。 SQL 编辑器: SQL 编辑器的...

    超级有影响力霸气的Java面试题大全文档

     SessionBean: Stateless Session Bean 的生命周期是由容器决定的,当客户机发出请求要建立一个Bean的实例时,EJB容器不一定要创建一个新的Bean的实例供客户机调用,而是随便找一个现有的实例提供给客户机。...

    Visual C++实践与提高-COM和COM+篇『PDF』

    8.4.1 比较ActiveX文档与OLE文档(用户角度) 8.4.2 比较ActiveX文档与OLE文档(开发者角度) 8.4.3 开发ActiveX文档服务器 8.4.4 将OLE文档转换服务器改造为ActiveX文档服务器 8.4.5 在IE中测试ScribbleActiveX ...

    Excel百宝箱8.0

    【公农双历查询】【高级定位】【选区背景着色】【修改文件建立时间】【工作表环境设置】【按颜色合计】【根据工资计算钞票】【隔行插入行】【折分工作簿(工作表)】【工作表折分】【合并工作簿】【文本与数值互换】...

    Visual C++ 2005入门经典.part08.rar (整理并添加所有书签)

    第15章 创建文档和改进视图 15.1 什么是集合类 15.1.1 集合的类型 15.1.2 类型安全的集合类 15.1.3 对象集合 15.1.4 类型化指针集合 15.2 使用CList模板类 15.2.1 绘制曲线 15.2.2 定义CCurve类 15.2.3 实现CCurve类...

    Visual C++ 2005入门经典.part04.rar (整理并添加所有书签)

    第15章 创建文档和改进视图 15.1 什么是集合类 15.1.1 集合的类型 15.1.2 类型安全的集合类 15.1.3 对象集合 15.1.4 类型化指针集合 15.2 使用CList模板类 15.2.1 绘制曲线 15.2.2 定义CCurve类 15.2.3 实现CCurve类...

    Visual C++ 2005入门经典.part07.rar (整理并添加所有书签)

    第15章 创建文档和改进视图 15.1 什么是集合类 15.1.1 集合的类型 15.1.2 类型安全的集合类 15.1.3 对象集合 15.1.4 类型化指针集合 15.2 使用CList模板类 15.2.1 绘制曲线 15.2.2 定义CCurve类 15.2.3 实现CCurve类...

    Visual C++ 2005入门经典.part09.rar (整理并添加所有书签)

    第15章 创建文档和改进视图 15.1 什么是集合类 15.1.1 集合的类型 15.1.2 类型安全的集合类 15.1.3 对象集合 15.1.4 类型化指针集合 15.2 使用CList模板类 15.2.1 绘制曲线 15.2.2 定义CCurve类 15.2.3 实现CCurve类...

    Visual C++ 2005入门经典.part06.rar (整理并添加所有书签)

    第15章 创建文档和改进视图 15.1 什么是集合类 15.1.1 集合的类型 15.1.2 类型安全的集合类 15.1.3 对象集合 15.1.4 类型化指针集合 15.2 使用CList模板类 15.2.1 绘制曲线 15.2.2 定义CCurve类 15.2.3 实现CCurve类...

    Visual C++ 2005入门经典.part05.rar (整理并添加所有书签)

    第15章 创建文档和改进视图 15.1 什么是集合类 15.1.1 集合的类型 15.1.2 类型安全的集合类 15.1.3 对象集合 15.1.4 类型化指针集合 15.2 使用CList模板类 15.2.1 绘制曲线 15.2.2 定义CCurve类 15.2.3 实现CCurve类...

    2009达内SQL学习笔记

    最大优点是可以包含其他 SELECT 语句,使用能够动态地建立 WHERE 子句。 如 SELECT prod_id,prod_price,prod_name FROM Products WHERE vend_id IN(‘DELL’,’RBER’,’TTSR’); 八、单行函数: 函数一般在数据...

    Visual C++ 2005入门经典--源代码及课后练习答案

    9.3 继承机制下的访问控制 446 9.3.1 派生类中构造函数的操作 448 9.3.2 声明类的保护成员 452 9.3.3 继承类成员的访问级别 455 9.4 派生类中的复制构造函数 456 9.5 友元类成员 461 9.5.1 友元类 462...

    excel的使用

    输入完毕之后,再次按下键盘上的Ctrl键,然后使用鼠标左键单击所选择的多个工作表,解除这些工作表的联系,否则在一张表单中输入的数据会接着出现在选中的其它工作表内。(6) 不连续单元格填充同一数据选中一个...

    软件工程知识点

    需求分析是对软件系统的后期分析,需要进行的活动包括:分析用户需求、建立需求原型、分析系统需求和进行需求验证等。 3.用户需求获取 (1)用户调查是最基本的用户需求信息收集方法,比较常用的调查方法包括:...

    Visual C++ 2010入门经典(第5版)--源代码及课后练习答案

     ·指导读者用c++和c++/cli设计和创建大量的windows应用程序  ·为帮助读者掌握编程技巧,提供了大量可运行的示例和练习 作译者  Ivor Horton是撰著Java、C和C++编程语言图书的杰出作家之一。大家一致认为,...

    ExtAspNet v2.2.1 (2009-4-1) 值得一看

    -修正了Firefox下Zoom In/Out时页面消失的BUG。 -删除Panel的EnableLightBackgroundColor属性,同时EnableBackgroundColor只支持Blue和Gray两种Theme。 +2010-01-31 v2.2.0 -使得Asp.net的控件ImageButton...

Global site tag (gtag.js) - Google Analytics