La Web del Programador: Comunidad de Programadores
 
    Pregunta:  602 - COMO PASO OBJETOS DE ORACLE DE UN USUARIO A OTRO
Autor:  Nidia Velez
Tengo una base de datos de Oracle 7.3 que es administrada con la consola del Enterprise Manager, el propietario de las tablas creadas, indices y demas objetos de mi BD es SYS, o sea, el administrador de ORACLE, pero ahora necesito pasar mis tablas a un propietario distinto pero al tratar de hacerlo con el Data Manager no me permite hacerlo, tambien lo intente con el Server Manager pero no me reconoce como DBA a pesar de conectarme como internal/oracle. De que otra forma puedo hacerlo? Por otra parte Como puedo liberar los rollback segments en ORACLE?

  Respuesta:  Marco Anibal Villatoro Ralda
Nidia prueba con en SCHEMA MANAGER has click derecho en el objeto que deseas mover y luego elige create like puede utilizar el mismo nombre para el objeto lo unico que debes de cambiar en el schema que es lo mimso que el usuario, luego que lo has creado puedes eliminar el objeto en el primer usuario.. espero te sirva.. en cuanto a tu segunda pregunta es una duda que yo tambien tengo, cuando tengas la respuesta te agradeceria me la envies a [email protected], si no enviame tu e-mail por si encuentro la respuesta primero que tu...

  Respuesta:  Rafael Padrón
puedes usar import y export, el import se utiliza para respaldar los objetos de un usuarios de base de datos, y el export para recuperarlos, debes realizar el export de los objetos del usuario, y luego hacer el import con un fromuser touser y creara los objetos de un usuario a otro te expico abajo la sintaxis mas a detalle.

comando export:

exp <usuario/clave> tables=<tablas> file=<nombre del archivo export>

para pedir ayudar de los parametros es "exp help=yes"

luego el import:

imp <usuario/clave> fromuser=<usuario dueño el export> touser=<nuevo usuario> ignore=yes file<archivo export>

espero que esto te sirva de algo

chao

  Respuesta:  Anonimo
Que yo sepa, (y yo no se demasiado) creo que no exista forma de pasar un objeto a otro usuario, lo que puedes hacer es:

A) Darle privilegios al segundo usuario sobre el objeto original ( GRANT xxxxx )

B) Recrear el objeto en el nuevo usuario (Copiarlo vamos)
- Con un CREATE TABLE AS ( SELECT * FROM tabla_origen)
- Con un COPY xxxxxxx
- Exportando (exp ) la tabla e importandola (imp) en el usuario destino.