Oracle table_privileges values

enter image description here

Does anyone know the values ​​that are listed in the privilege table? I already figured out what “A” means. But I did not find out what "S" means. I think this is not documented. This has something to do with update privileges for certain columns.

+5
source share
2 answers

What you are missing is that we can provide UPDATE for a subset of the table columns.

First of all, let's just highlight SELECT in the table. The value of UPDATE_PRIV is "N", for None:

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>

Now, if I give UPDATE in one column, the value of UPDATE_PRIV is "S", presumably for Some:

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>

Finally, I provide UPDATE throughout the table with the value UPDATE_PRIV - "A", for 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> 
+3

, , @JustinCave 2005 , .

SQL table_privileges

http://download-west.oracle.com/docs/cd/B10501_01/server.920/a96536/ch2486.htm#1318903

"TABLE_PRIVILEGES , , , , PUBLIC . Oracle 6. Oracle .

, Oracle , , DBA_TAB_PRIVS. .

+4

All Articles