Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Oracle »

no me aparecen las tablas de systema desde una consulta en un procedimiento

Estas en el tema de no me aparecen las tablas de systema desde una consulta en un procedimiento en el foro de Oracle en Foros del Web. hola, estoy intentando crear un procedimiento el cual borre el contenido de una tabla y lo llene con datos de una tabla de sistema: dba_tab_privs ...
  #1 (permalink)  
Antiguo 30/01/2012, 14:17
 
Fecha de Ingreso: agosto-2011
Mensajes: 20
Antigüedad: 12 años, 7 meses
Puntos: 0
no me aparecen las tablas de systema desde una consulta en un procedimiento

hola, estoy intentando crear un procedimiento el cual borre el contenido de una tabla y lo llene con datos de una tabla de sistema: dba_tab_privs

el cod. es le siguiente:

Código SQL:
Ver original
  1. CREATE OR REPLACE PROCEDURE REINICIA_SEGURIDAD AS
  2.  
  3. eliminar_filas varchar2(100):= 'DELETE FROM CONTROL_SEGURIDAD';
  4. insertar_filas varchar2(200) := 'select * from dba_tab_privs';
  5.  
  6. BEGIN
  7.  
  8. EXECUTE IMMEDIATE eliminar_filas;
  9. EXECUTE IMMEDIATE insertar_filas ;
  10.  
  11. END REINICIA_SEGURIDAD;


si bien en el codigo solo hago un select all para los datos como una prueba, es porque me aparece el mensaje; "tabla o vista no existe" ...

y estoy 100% seguro que existe ya que desde una hoja sql hago la misma consulta y aparecen todos los datos....

la pregunta es que porque no me funciona la consulta esta tabla desde el procedimiento???... también hice la consulta con "SYS.dba_tab_privs" y nada...

ojala me puedan ayudar!
saludos!

------

EDITO:

Me di cuenta que si me funciona con la tabla USER_TAB_PRIVS....estuve leyendo en internet pero no entendí del todo la diferencia que de base tenia los privilegios...

en otro código (igual a este que tengo en este post), debo hacer otra consulta a DBA_USERS, pero en esta ocasión no me sirve USER_USERS para mi consulta, ya que solo devuelve 1 fila, lo cual no me sirve...

Por que pasa esto?
cómo lo puedo solucionar??

Estaré atento a sus respuestas,
Saludos!

Última edición por leo_star; 31/01/2012 a las 08:21
  #2 (permalink)  
Antiguo 31/01/2012, 21:09
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 1 mes
Puntos: 360
Respuesta: no me aparecen las tablas de systema desde una consulta en un procedimient

dba_loquesea = Vistas de la metadata. Solo accequible por usuarios con rl dba.
all_loquesea = Vistas de la metadata con información de los objetos propios y objetos en los que tiene permisos.
user_loquesea = vistas de los objetos propios del usuario.

si vos tenes un usuario sin privilegios de dba, para ese usuario la vista dba_loquesea no va a aparecer.

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 02/02/2012, 12:32
 
Fecha de Ingreso: agosto-2011
Mensajes: 20
Antigüedad: 12 años, 7 meses
Puntos: 0
Respuesta: no me aparecen las tablas de systema desde una consulta en un procedimient

Cita:
Iniciado por huesos52 Ver Mensaje
dba_loquesea = Vistas de la metadata. Solo accequible por usuarios con rl dba.
all_loquesea = Vistas de la metadata con información de los objetos propios y objetos en los que tiene permisos.
user_loquesea = vistas de los objetos propios del usuario.

si vos tenes un usuario sin privilegios de dba, para ese usuario la vista dba_loquesea no va a aparecer.

saludos
Muchas gracias!
te pasaste

me costo mucho entender eso, pero me lo resumiste perfectamente :)

gracias nuevamente, saludos!!!

Etiquetas: insert, procedimiento, select, sql, tabla, tablas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:00.