martes, 29 de enero de 2008

Sqldeveloper : ver esquemas de otros usuarios

Para poder ver el esquema de otro usuario podemos realizar lo siguiente:

1) Primero debemos tener permisos para acceder a las tablas/objetos del otro esquema , al menos un select. Esto nos lo tiene que dar el dueño de la tabla:

GRANT SELECT ON "esquemaalqueacceder"."nombretabla" TO "usuarionuevo"
ej: GRANT SELECT on unuser.tabla1 to usuarionuevo

ahora podemos acceder al esquema de otro usuario con la siguiente sintaxis:

select * from unuser.tabla1

Para acceder a la tabla siempre hay que precederla del nombre del esquema

2)Si tenemos el permiso de sistema "CREATE SYNONYM" podemos crear un sinónimo para evitar tener que escribir el nombre del esquema. O bien si tenemos consultas ya creadas, evitaremos tener que reescribirlas y añadirles el nombre del esquema. Creamos el sinónimo con el mismo nombre de la tabla:

CREATE OR REPLACE SYNONYM tabla1 FOR unuser.tabla1

ahora podemos realizar sin errores la consulta: select * from tabla1

3)Para ver las tablas que tenemos accesibles desde SQLDeveloper miramos lo siguiente:
a) pestaña/ventana de connection
b) nos conectamos
c) Veremos dentro del árbol: Tables, view, indexes .... y seleccionamos "Other Users". El icono es una carpeta con un muñeco de color rojo.
d) Dentro de "Other Users" buscamos el usuario (en el ejemplo unuser). Desplegamos el contenido y veremos todo lo que tenemos accesible