grant select on ca to u_db;方案对象的9种权限中没有drop权限。如何给一个用户删除表的权限呢?是否是表的删除权限只有所属方案才有?但是我试过用sys用户可以删除其它用户所建的表,所以想问下这个权限是什么?

解决方案 »

  1.   


    我自己找到答案 了:
    grant drop any table to u_db;不过这是删除任意表的权限,只是单个表呢?
      

  2.   


    DROP ANY TABLE 删除任何SCHEMA的TABLE(包括数据及表结构)
      

  3.   


    我只要删除某个表的权限呢?比如说: scott.emp。
      

  4.   


    scott@ORCL> grant all on dept to hr;Grant succeeded.scott@ORCL> select * from tab;TNAME                          TABTYPE  CLUSTERID
    ------------------------------ ------- ----------
    T_TEMP                         TABLEscott@ORCL> conn hr/hr
    Connected.hr@ORCL> drop table scott.t_temp;Table dropped.
      

  5.   

    不要一次性把一个方案下的所有表的删除权限都赋予一个人,那太不安全了。
    推荐你在表的所有者的用户下,用grant all on 表名 to 用户名
      

  6.   

    同意楼上,删除表时,只需要赋予表所在用户权限即可,建议楼主看一下这篇文章http://blog.csdn.net/xiayang05/article/details/5861846