Entendi Reginaldo, cabe então a tomada de uma decisão no sentido de
como serão acessadas as tablespaces de uma Base. Achei alguns artigos
sobre tablespaces que me clarearam a forma na qual o Oracle administra
seus dados, em visão Lógica e Física.

Agora eu tive a seguinte situação questionada por um desenvolvedor:
Criei um usuário que pode apenas fazer "select" em algumas tabelas
(medida de segurança). Mas através da ferramenta Oracle SQL Developer
para quem estiver utilizando este usuário, precisa alcançar um caminho
mais longo para acessar a tabela (Other Users, UserName, Table).

Existe alguma forma de criar um Alias (diferente do "sinonym") que
este usuário se identifica com a tabela assim como o próprio Owner?

Não sei se fui claro na explicação, mas para desenvolvedor a forma
mais simples que a tabela pode ser buscada é a forma mais desejada. rs

Atenciosamente,

Paulo Andrade
MobileCard
[EMAIL PROTECTED]







--- Em oracle_br@yahoogrupos.com.br, Reginaldo Ribeiro
<[EMAIL PROTECTED]> escreveu
>
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> Ao meu ver, a principal implicação é a administração. Você cria com
> seu usuário Paulo uma table chamada tabela. Depois, com seu user
> Paulo2 você cria uma table chamada table2. Aí, com o mesmo usuário
> Paulo2, você cria um sinônimo público chamado tabela, apontando para
> Paulo2.table2. Aí você sai de férias em dezembro (porque é clt e
> antigo na empresa) e quando volta em janeiro têm um novo projeto
> gigantesco. A próxima vez que você olhar esses objetos, lá por julho
> do ano que vêm, você vai ter que ficar caçando os objetos porque não
> se lembra mais que tabela é um sinônimo público apontando para um
> objeto cujo nome não tem relação aparente com o nome do sinônimo.
> Alguns sinônimos públicos, tudo bem... Mas como você já falou em
> "equipe de desenvolvimento"... Eu iria devagar com isso e passaria a
> pensar mais em sinônimos privados apenas.
> De qualquer forma, é sua a decisão. Qualquer coisa, estamos por aí.
> 
> 
> Ribeiro, Reginaldo
> Administrador de Bancos de Dados
> Oracle Certified Associate 10g
> - ----------------------------------------------------
> DBCom Brazil Consultoria em Tecnologia da Informação
> skype: rflribeiro
> mobile: 551192344290
> fone: 551135225172
> e-mail: [EMAIL PROTECTED]
> site: http://www.dbcom.com.br
> Chave Pública:
>
http://keyserver.noreply.org/pks/lookup?search=rflribeiro%40dbcom.com.br&fingerprint=on&op=index
> 
> 
> 
> Paulo wrote:
> >
> > Fantástico, era exatamente este meu problema:
> >
> > Para acessar a tabela de outro usuário eu preciso colocar o OWNER
> > antes do nome da tabela como: OWNER.nometabela como assinalado.
> >
> > Mas posso também criar um "Sinonimo" como Reginaldo me indicou
> > através do e-mail, solução fantástica que facilita para os
> > desenvolvedores quando criarei usuários com permissões diferentes.
> > Muito obrigado mesmo pela ajuda!
> >
> > Agora só por uma questão conceitual: Devo adotar então que esta é a
> >  forma única ou a melhor forma para realizar a divisão de acesso de
> > uma tabela dentre alguns usuários? É possível uma tabela possuir
> > mais de um OWNER(tenho absoluta certeza que não, mas para checar)?
> > O uso de sinônimos do tipo public é um recurso utilizado(penso em
> > questões de segurança)? Enfim preciso de um argumento interessante
> > para convencer a minha chefe que esta é a solução mais
> > interessante.
> >
> > Um abração!
> >
> > --- Em oracle_br@yahoogrupos.com.br
> > <mailto:oracle_br%40yahoogrupos.com.br>, Reginaldo Ribeiro
> > <rflribeiro@> escreveu
> >>
> >> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
> >>
> >> Paulo, alguns amigos já tiveram oportunidade de orientá-lo. Eu,
> >> inclusive, lhe enviei um exemplo imenso em pvt contendo,
> >> inclusive, instruções para lidar com sinônimos de objetos e links
> >> de referência. Seria interessante informar se sua dúvida está
> >> sanada. Obrigado.
> >>
> >>
> >> Ribeiro, Reginaldo Administrador de Bancos de Dados Oracle
> >> Certified Associate 10g -
> >> ---------------------------------------------------- DBCom Brazil
> >> Consultoria em Tecnologia da Informação skype: rflribeiro mobile:
> >> 551192344290 fone: 551135225172 e-mail: rflribeiro@ site:
> >> http://www.dbcom.com.br <http://www.dbcom.com.br> Chave Pública:
> >>
> >
http://keyserver.noreply.org/pks/lookup?search=rflribeiro%40dbcom.com.br&fingerprint=on&op=index
> > 
> >
<http://keyserver.noreply.org/pks/lookup?search=rflribeiro%40dbcom.com.br&fingerprint=on&op=index>
> >
> >>
> >>
> >>
> >> Rafael Almeida Milanez wrote:
> >>>
> >>> Vamos la para simulação
> >>>
> >>> [EMAIL PROTECTED]>show user USER é "PAULO"
> >>>
> >>> [EMAIL PROTECTED]>create table T_TSE 2 ( cod number);
> >>>
> >>> Tabela criada.
> >>>
> >>> [EMAIL PROTECTED]>grant create session to paulo2 ;
> >>>
> >>> [EMAIL PROTECTED]>grant select on paulo.T_TSE to paulo2;
> >>>
> >>> Concessão bem-sucedida.
> >>>
> >>>
> >>> Agora conecto com Paulo2
> >>>
> >>> [EMAIL PROTECTED]>show <mailto:[EMAIL PROTECTED]>show> user USER é 
> >>> "PAULO2"
> >>>
> >>> Ai esta a diferença, voce tem que colocar o OWNER.tabela
> >>>
> >>> [EMAIL PROTECTED]>select <mailto:[EMAIL PROTECTED]>select> * from T_TSE; 
> >>> select *
> >>> from T_TSE * ERRO na linha 1: ORA-00942: table or view does not
> >>> exist
> >>>
> >>>
> >>> [EMAIL PROTECTED]>select <mailto:[EMAIL PROTECTED]>select> * from 
> >>> paulo.T_TSE;
> >>>
> >>> não há linhas selecionadas
> >>>
> >>> ________________________________
> >>>
> >>> De: oracle_br@yahoogrupos.com.br
> > <mailto:oracle_br%40yahoogrupos.com.br>
> >>> <mailto:oracle_br%40yahoogrupos.com.br>
> >>> [mailto:oracle_br@yahoogrupos.com.br
> > <mailto:oracle_br%40yahoogrupos.com.br>
> >>> <mailto:oracle_br%40yahoogrupos.com.br>] Em nome de Paulo
> >>> Enviada em: segunda-feira, 27 de outubro de 2008 10:24 Para:
> >>> oracle_br@yahoogrupos.com.br
> > <mailto:oracle_br%40yahoogrupos.com.br>
> >>> <mailto:oracle_br%40yahoogrupos.com.br> Assunto: Re: RES:
> >>> [oracle_br] Novo Usuário para Tablespace Existente
> >>>
> >>> O usuário que executou os comandos foi o OWNER que criou as
> >>> tabelas. Ele pertence à rule DBA:
> >>>
> >>> SQL> select * from owner.T_TSE; select * from owner.T_TSE *
> >>> ERROR at line 1: ORA-00942: table or view does not exist
> >>>
> >>> SQL> select * from T_TSE;
> >>>
> >>> ORDER_ID NAME ---------- ---------- 1 Joao 5 Paulo
> >>>
> >>> Quando eu faço:
> >>>
> >>> SQL> select OWNER from DBA_SEGMENTS where TABLESPACE_NAME =
> >>> 'TSE';
> >>>
> >>> OWNER ------------------------------ PAULO
> >>>
> >>> O que eu quero é que o usuário PAULO2 tenha acesso a tabela
> >>> T_TSE.
> >>>
> >>> SQL> GRANT SELECT ON T_TSE TO PAULO2;
> >>>
> >>> Grant succeeded.
> >>>
> >>> SQL> COMMIT;
> >>>
> >>> SQL> CONNECT PAULO2/PAULO2; Connected.
> >>>
> >>> Commit complete.
> >>>
> >>> SQL> SELECT * FROM T_TSE; SELECT * FROM T_TSE * ERROR at line
> >>> 1: ORA-00942: table or view does not exist
> >>>
> >>> SQL>
> >>>
> >>> --- Em oracle_br@yahoogrupos.com.br
> > <mailto:oracle_br%40yahoogrupos.com.br>
> >>> <mailto:oracle_br%40yahoogrupos.com.br>
> >>> <mailto:oracle_br%40yahoogrupos.com.br> , "Rafael Almeida
> >>> Milanez" <rmilanez@> escreveu
> >>>>
> >>>> Voce necessita colocar o OWNER (dono da tabela) antes para
> > visualizar
> >>>>
> >>>>
> >>>> select * from owner.T_TSE
> >>>>
> >>>> ________________________________
> >>>>
> >>>> De: oracle_br@yahoogrupos.com.br
> > <mailto:oracle_br%40yahoogrupos.com.br>
> >>> <mailto:oracle_br%40yahoogrupos.com.br>
> >>> <mailto:oracle_br%40yahoogrupos.com.br>
> >>> [mailto:oracle_br@yahoogrupos.com.br
> > <mailto:oracle_br%40yahoogrupos.com.br>
> >>> <mailto:oracle_br%40yahoogrupos.com.br>
> >>> <mailto:oracle_br%40yahoogrupos.com.br> ] Em nome de Paulo
> >>> Andrade
> >>>> Enviada em: segunda-feira, 27 de outubro de 2008 09:34 Para:
> >>>> oracle_br@yahoogrupos.com.br
> > <mailto:oracle_br%40yahoogrupos.com.br>
> >>> <mailto:oracle_br%40yahoogrupos.com.br>
> >>> <mailto:oracle_br%40yahoogrupos.com.br>
> >>>> Assunto: [oracle_br] Novo Usuário para Tablespace Existente
> >>>>
> >>>>
> >>>>
> >>>> Pessoal tem uma dúvida que não consigo encontrar resposta:
> >>>>
> >>>> Possuo uma Base "SID = BASE3" com alguns tablespaces. Tenho
> >>>> por exemplo um TABLESPACE de nome "TSE" e criei uma
> > tabela de
> >>> teste e inseri algum dado. Tenho também um usuário que está com
> >>> a permissão de DBA e CONNECT definido na tablespace "TSE".
> >>>>
> >>>> Tudo certo até então. Agora não consigo fazer o seguinte:
> >>>> Criar um
> >>> novo usuário que consiga acessar a tabela que está na
> >>> TABLESPACE
> > "TSE".
> >>>>
> >>>> Criei o usuário novo com o comando:
> >>>>
> >>>> CREATE USER "NEWUSR" IDENTIFIED BY "NEWUSR" DEFAULT
> >>>> TABLESPACE
> > "TSE"
> >>> TEMPORARY TABLESPACE "TEMP_TSE" PROFILE DEFAULT ACCOUNT UNLOCK;
> >>>
> >>>>
> >>>> e defini as permissões:
> >>>>
> >>>> GRANT "CONNECT" TO "NEWUSR"
> >>>>
> >>>> e
> >>>>
> >>>> GRANT SELECT ON T_TSE TO "NEWUSR";
> >>>>
> >>>> Apesar de ser retornado que efetivou o GRANT, não consigo
> > realizar o
> >>> "SELECT" na tabela "T_TSE" com o "NEWUSR".
> >>>>
> >>>> O que devo fazer?
> >>>>
> >>>> Paulo Andrade
> >
> > <!-- #ygrp-mkp{ border: 1px solid #d8d8d8; font-family: Arial;
> > margin: 14px 0px; padding: 0px 14px; } #ygrp-mkp hr{ border: 1px
> > solid #d8d8d8; } #ygrp-mkp #hd{ color: #628c2a; font-size: 85%;
> > font-weight: bold; line-height: 122%; margin: 10px 0px; } #ygrp-mkp
> >  #ads{ margin-bottom: 10px; } #ygrp-mkp .ad{ padding: 0 0; }
> > #ygrp-mkp .ad a{ color: #0000ff; text-decoration: none; } --> <!--
> > #ygrp-sponsor #ygrp-lc{ font-family: Arial; } #ygrp-sponsor
> > #ygrp-lc #hd{ margin: 10px 0px; font-weight: bold; font-size: 78%;
> > line-height: 122%; } #ygrp-sponsor #ygrp-lc .ad{ margin-bottom:
> > 10px; padding: 0 0; } --> <!-- #ygrp-mlmsg {font-size:13px;
> > font-family:
> > arial,helvetica,clean,sans-serif;*font-size:small;*font:x-small;}
> > #ygrp-mlmsg table {font-size:inherit;font:100%;} #ygrp-mlmsg
> > select, input, textarea {font:99%
> > arial,helvetica,clean,sans-serif;} #ygrp-mlmsg pre, code {font:115%
> > monospace;*font-size:100%;} #ygrp-mlmsg * {line-height:1.22em;}
> > #ygrp-text{ font-family: Georgia; } #ygrp-text p{ margin: 0 0 1em
> > 0; } #ygrp-tpmsgs{ font-family: Arial; clear: both; } #ygrp-vitnav{
> > padding-top: 10px; font-family: Verdana; font-size: 77%; margin: 0;
> > } #ygrp-vitnav a{ padding: 0 1px; } #ygrp-actbar{ clear: both;
> > margin: 25px 0; white-space:nowrap; color: #666; text-align: right;
> > } #ygrp-actbar .left{ float: left; white-space:nowrap; }
> > .bld{font-weight:bold;} #ygrp-grft{ font-family: Verdana;
> > font-size: 77%; padding: 15px 0; } #ygrp-ft{ font-family: verdana;
> > font-size: 77%; border-top: 1px solid #666; padding: 5px 0; }
> > #ygrp-mlmsg #logo{ padding-bottom: 10px; } #ygrp-reco {
> > margin-bottom: 20px; padding: 0px; } #ygrp-reco #reco-head {
> > font-weight: bold; color: #ff7900; } #reco-grpname{ font-weight:
> > bold; margin-top: 10px; } #reco-category{ font-size: 77%; }
> > #reco-desc{ font-size: 77%; } #ygrp-vital{ background-color:
> > #e0ecee; margin-bottom: 20px; padding: 2px 0 8px 8px; } #ygrp-vital
> >  #vithd{ font-size: 77%; font-family: Verdana; font-weight: bold;
> > color: #333; text-transform: uppercase; } #ygrp-vital ul{ padding:
> > 0; margin: 2px 0; } #ygrp-vital ul li{ list-style-type: none;
> > clear: both; border: 1px solid #e0ecee; } #ygrp-vital ul li .ct{
> > font-weight: bold; color: #ff7900; float: right; width: 2em;
> > text-align:right; padding-right: .5em; } #ygrp-vital ul li .cat{
> > font-weight: bold; } #ygrp-vital a{ text-decoration: none; }
> > #ygrp-vital a:hover{ text-decoration: underline; } #ygrp-sponsor
> > #hd{ color: #999; font-size: 77%; } #ygrp-sponsor #ov{ padding: 6px
> >  13px; background-color: #e0ecee; margin-bottom: 20px; }
> > #ygrp-sponsor #ov ul{ padding: 0 0 0 8px; margin: 0; }
> > #ygrp-sponsor #ov li{ list-style-type: square; padding: 6px 0;
> > font-size: 77%; } #ygrp-sponsor #ov li a{ text-decoration: none;
> > font-size: 130%; } #ygrp-sponsor #nc{ background-color: #eee;
> > margin-bottom: 20px; padding: 0 8px; } #ygrp-sponsor .ad{ padding:
> > 8px 0; } #ygrp-sponsor .ad #hd1{ font-family: Arial; font-weight:
> > bold; color: #628c2a; font-size: 100%; line-height: 122%; }
> > #ygrp-sponsor .ad a{ text-decoration: none; } #ygrp-sponsor .ad
> > a:hover{ text-decoration: underline; } #ygrp-sponsor .ad p{ margin:
> > 0; } o{font-size: 0; } .MsoNormal{ margin: 0 0 0 0; } #ygrp-text
> > tt{ font-size: 120%; } blockquote{margin: 0 0 0 4px;}
> > .replbq{margin:4} -->
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.9 (GNU/Linux)
> Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org
> 
> iJwEAQECAAYFAkkF8sAACgkQ9hsrz6ieG2gXUgP/S2wjKB/yUF1SfqmEbMaL/3d/
> 9YeVtKV4HhCqERSQeQvR7zFvoJ5618h9FixFwtSyvtp+YITy1Pe0J/X8Dve4JRBV
> JQWROoS/ALWlMMAh63IxxGeaOpBTDtsZaAN1v4xEbqJhjwt9tU8pkUtpmJOLlr0Y
> +FRKTEvIqtUN3fqU8do=
> =24Ff
> -----END PGP SIGNATURE-----
>


Responder a