Ehhhh, vida bandida. Sempre caímos em velhos dilemas.
Mais uma para não esquecer.
Em sistemas concorrentes, quando há algumas tabelas compartilhadas (também conhecidas como tabelas corporativas), não é raro um dos sistemas precisar efetuar uma atualização somente em uma coluna (geralmente por questões de segurança ou auditoria).
Segue um exemplo do grant.
SQL> desc t1; Nome Nulo? Tipo -------------- -------- ------ C1 NUMBER C2 NUMBER C3 NUMBER SQL>Digamos que o usuário TAMTAM terá acesso irrestrito a tabela e o usuário TAMBEM terá privilégio de SELECT e UPDATE na coluna C2.
SQL> grant all on t1 to TAMTAM;
Concessao bem-sucedidaSQL> grant select on t1 to TAMBEM; Concessao bem-sucedidaSQL> grant update (c2) on t1 to TAMBEM; Concessao bem-sucedidaComo demonstrado, o usuário TAMTAM tem acesso irrestrito a tabela e o usuário TAMBEM, permissão de SELECT e UPDATE na coluna C2.
--
Marcos Aurélio Braga
OCA - Oracle Database 10g Administrator