Sim, essa opção funciona certamente, eu gosto mais da geração do script porque :
- o script é uma coisa FÍSICA de histórico que eu posso guardar, arquivar, anexar no e-mail que mando pro meu supervisor... - e o mais legal, se eu tiver que desfazer (tipo, hoje eu dei grant, amanhã por qquer motivo preciso fazer revoke, digamos) é bico eu abrir o script num editor de texto/search/replace GRANT por REVOKE, salvo com outro nome, tou na boa... - se deu um erro qquer por um motivo externo qquer, na linha x, uma vez corrigido é bico eu abrir o script no editor de texto e apagar as linhas acima da linha x, e re-executar... []s Chiappa --- Em oracle_br@yahoogrupos.com.br, "Anderson" <[EMAIL PROTECTED]> escreveu > > Bem amigos, eu uso um script conforme abaixo: > > begin > for i in ( select table_name from user_tables where table_name like > 'nome_tabela' ) loop > execute immediate 'grant select, insert, delete, update on ' || > i.table_name || ' to minha_role'; > end loop; > end; > / > > O script acima pode ser alterado de acordo com as suas necessidades, > mas funciona perfeitamente. > > Anderson. > > > --- Em oracle_br@yahoogrupos.com.br, "jlchiappa" <jlchiappa@> escreveu > > > > Isso ** NÃO ** existe, a linguagem SQL não previu algo do tipo, e > > REALMENTE digitar tabela por tabela é ABSURDO, mas a opção simples, > > fácil e rápida que eu uso DIARIAMENTE aqui no trabalho pra automação > > de tarefas do tipo é vc pedir pro sqlplus gerar a lista dos comandos, > > tipo : > > > > spool grants_a_fazer.sql > > select 'GRANT SELECT ON ' || table_name || ' TO usuario;' from > > user_tables; > > spool off > > > > e tá lá, é só executar o script grants_a_fazer.sql, ok ?? DEPENDENDO > > do caso, vc provavelmente vai querer colocar um SETs aí pra eliminar > > do .SQL a ser gerado cabeçalhos, espaços em branco, etc, mas NADA do > > outro mundo.... > > > > E lembro também, claro, que no caso específico de GRANTs, muitas > > vezes é útil vc criar uma ROLE, dar essa role pra todos os usuários > > UMA ÚNICA VEZ, aí a cada nova tabela basta um comando GRANT SELECT ON > > novatabela TO nomedarole; , que AUTOMAGICAMENTE os usuários que > > possuem a role obtém o novo direito... > > > > []s > > > > Chiappa > > > > --- Em oracle_br@yahoogrupos.com.br, "Felipe Rodrigues" > > <felipearodrigues@> escreveu > > > > > > Pessoal: > > > > > > alguém ai sabe, como dar acessos a todas as tabes para um usuário > > utilizando > > > apenas um ou alguns comandos via Prompt do Plus.??? > > > > > > assim... criei um usuário e gostaria de disponibilizar para ele > > todas as > > > tabelas para ele poder utilizar o comando SELECT. > > > Eu consigo fazer porém tendo que digitar tabela por tabela.... > > > Não existe algo do tipo > > > > > > *grant SELECT on all tables to usuario;* > > > > > > Alguém ai tem alguma luz...??? > > > > > > Obrigado > > > Felipe > > > > > > > > > [As partes desta mensagem que não continham texto foram removidas] > > > > > >