加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

oracle table_privileges值

发布时间:2020-12-12 13:18:37 所属栏目:百科 来源:网络整理
导读:有人知道table_privileges中给出的值吗?我已经发现了“A”的含义.但我没有发现“S”代表什么.我认为这没有记录.它与特定列的更新权限有关. 解决方法 您缺少的是我们可以在表的列的子集上授予UPDATE. 首先,让我们在表上授予SELECT.对于None,UPDATE_PRIV的值
有人知道table_privileges中给出的值吗?我已经发现了“A”的含义.但我没有发现“S”代表什么.我认为这没有记录.它与特定列的更新权限有关.

解决方法

您缺少的是我们可以在表的列的子集上授予UPDATE.

首先,让我们在表上授予SELECT.对于None,UPDATE_PRIV的值为’N’:

SQL> grant select on t23 to mr_x;

Grant succeeded.


SQL> select select_priv,update_priv 
  2  from table_privileges
  3  where table_name = 'T23'
  4  /

S U
- -
Y N

SQL>

现在,如果我在单个列上授予UPDATE,则UPDATE_PRIV的值为“S”,大概是对于某些:

SQL> grant update (col2) on t23 to mr_x
  2  /

Grant succeeded.

SQL> select select_priv,update_priv 
  2  from table_privileges
  3  where table_name = 'T23'
  4  /

S U
- -
Y S

SQL>

最后,我为整个表授予UPDATE UPDATE_PRIV的值为’A’,对于All:

SQL> grant update  on t23 to mr_x
  2  /

Grant succeeded.

SQL> select select_priv,update_priv 
  2  from table_privileges
  3  where table_name = 'T23'
  4  /

S U
- -
Y A

SQL>

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读