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

Ayuda en una funcion

Estas en el tema de Ayuda en una funcion en el foro de Oracle en Foros del Web. tengo una funcion en la cual quiero hacer un select * from a todas mis tablas de mi base de datos para no estar creando ...
  #1 (permalink)  
Antiguo 09/12/2009, 00:41
Avatar de zaccarelliasbun  
Fecha de Ingreso: mayo-2009
Ubicación: Bolivia
Mensajes: 70
Antigüedad: 14 años, 11 meses
Puntos: 1
Ayuda en una funcion

tengo una funcion en la cual quiero hacer un select * from a todas mis tablas de mi base de datos para no estar creando funciones para cada tabla como puedo hacer esto? ahora el otro problema es que cuando ejecuto la funcion me sale:

exact fetch returns more than requested number of rows

Código:
create or replace function Prueba1(nombre_tabla in varchar2) return varchar2 is
  nombre varchar2(30);
begin
  select snombre_desc into nombre
  from nombre_tabla;
  return(nombre);
end Prueba1;
aqui estoy tratando de hacer que funcione cuando me devuelve un valor, pero algunas tablas tienen varias columnas de q tipo de dato puedo devoler?
  #2 (permalink)  
Antiguo 09/12/2009, 07:11
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Ayuda en una funcion

Mejor utiliza un store procedure con parametro de entrada el nombre de la tabla.

Dentro del procedimiento algo así

Código sql:
Ver original
  1. EXECUTE IMMEDIATE 'SELECT *FROM ' || NOMBRE_TABLA;

saludos
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #3 (permalink)  
Antiguo 09/12/2009, 10:25
 
Fecha de Ingreso: junio-2007
Mensajes: 891
Antigüedad: 16 años, 10 meses
Puntos: 43
Respuesta: Ayuda en una funcion

Compañero Huesos, ese no es el problema, funcion o procedure le seguirá dando el TOO_MANY_ROWS, creo que la solucion sería una coleccion de objetos o un ¿ ref cursor ?
  #4 (permalink)  
Antiguo 09/12/2009, 12:19
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 2 meses
Puntos: 360
Respuesta: Ayuda en una funcion

tienes razón jc3000.
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #5 (permalink)  
Antiguo 09/12/2009, 12:54
Avatar de zaccarelliasbun  
Fecha de Ingreso: mayo-2009
Ubicación: Bolivia
Mensajes: 70
Antigüedad: 14 años, 11 meses
Puntos: 1
Respuesta: Ayuda en una funcion

gracias amigos por su ayuda vere en un momento si me sale algo.

Saludos
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 17:22.