如题,在mysql中可以用grant select on a.* to b;在oracle中怎么用?多谢!

解决方案 »

  1.   

    在B中建同义词!努力学习 oracle ebs 中
      

  2.   

    1.GRANT 赋于权限
    常用的系统权限集合有以下三个:
    CONNECT(基本的连接), RESOURCE(程序开发), DBA(数据库管理)
    常用的数据对象权限有以下五个:
    ALL  ON 数据对象名,  SELECT ON 数据对象名,  UPDATE ON 数据对象名,
    DELETE  ON 数据对象名,  INSERT ON 数据对象名,   ALTER  ON 数据对象名GRANT CONNECT, RESOURCE TO 用户名;
    GRANT SELECT ON 表名 TO 用户名;
    GRANT SELECT, INSERT, DELETE ON表名 TO 用户名1, 用户名2;2.REVOKE 回收权限REVOKE CONNECT, RESOURCE FROM 用户名;
    REVOKE SELECT ON 表名 FROM 用户名;
    REVOKE SELECT, INSERT, DELETE ON表名 FROM 用户名1, 用户名2;
      

  3.   

    1.
    set feedback off
    set echo off
    spool grant.sql
    select 'grant all on ' || object_name || ' to userB' from dba_objects
    where owner='userA'
    spool off2.
    sql>@grant.sql
    帅哥试一下吧,刚才找到的,是cenlmmx(学海无涯苦作舟) 的解决办法
      

  4.   

    我试了一下,需要改一点,以a登录set feedback off   --不显示最后的 select 200 rows
    set pagesize 0     --不会每隔几条出现一个空行
    set heading off    --不显示查询出来的表头
    spool c:\1.sql     --生成一个文件
    select 'grant select on ' || object_name || ' to b;' from user_objects where object_type = TABLE or object_type = VIEW;
    spool off
    @c:\1.sql
      

  5.   

    用A用户登陆,执行grant select any table to B
    然后再用B用户登陆