Ayuda con triggers

Preguntas y consejos sobre base de datos

Ayuda con triggers

Notapor masterenweb el Dom Jul 25, 2010 1:37 pm

Hola....

Toy necesitando ayuda para realizar un disparador

tengo los datos en una tabla de esta forma:

cantidad prod
2 teclado
3 monitor

los campos son cantidad y prod.

tengo que obtner cantidad de filas dependiendo de la cantidad de producto,

osea:

teclado
teclado
monitor
monitor
monitor

Estoy trabajando con postgresql 1.10
Bueno, desde ya muchas gracias. saludos
masterenweb
 
Mensajes: 3
Registrado: Dom Jul 25, 2010 1:28 pm

Re: Ayuda con triggers

Notapor fdantas el Lun Jul 26, 2010 12:07 pm

Ya lo he intentado eso?

Código: Seleccionar todo
For each tabla:

   do i = 1 to tabla.cantidade:
       disp produto.
   end.

end.

Fabio Dantas
Analista de Sistemas
Conheça Também http://wiki.4each.com.br/
fdantas
Site Admin
 
Mensajes: 300
Registrado: Jue Mar 26, 2009 6:37 pm

Re: Ayuda con triggers

Notapor masterenweb el Lun Jul 26, 2010 1:10 pm

Hola... lo forme para crearlo pero me da error de sintaxis cerca de For each.

CREATE OR REPLACE FUNCTION public.duplicar_fila()
RETURNS character varying AS
$BODY$
For each
DO i = 1 TO prueba.cantidad:
disp producto
END$BODY$
LANGUAGE 'sql' VOLATILE;

CREATE AGGREGATE public.text_duplicar_fila (
BASETYPE = character varying,
SFUNC = public.duplicar_fila,
STYPE = character varying,
INITCOND = ''
);
masterenweb
 
Mensajes: 3
Registrado: Dom Jul 25, 2010 1:28 pm

Re: Ayuda con triggers

Notapor fdantas el Mar Jul 27, 2010 11:26 am

No entiendo bien lo que estás tratando de hacer.
¿qué es?


CREATE AGGREGATE public.text_duplicar_fila (
BASETYPE = character varying,
SFUNC = public.duplicar_fila,
STYPE = character varying,
INITCOND = ''
);
Fabio Dantas
Analista de Sistemas
Conheça Também http://wiki.4each.com.br/
fdantas
Site Admin
 
Mensajes: 300
Registrado: Jue Mar 26, 2009 6:37 pm

Re: Ayuda con triggers

Notapor masterenweb el Mar Jul 27, 2010 8:49 pm

Finalmente lo solucione con php y quedo asi:

<?php...
function prueba(){
$datos= "SELECT * FROM prueba;";
$resultado=array();
foreach($datos as $valores)
{
for ($i = 0; $i <= $valores['cantidad']; $i++) {
$resultado[] = $valores;
}
}
return $resultado;
}



Muchisimas gracias a todos...
saludos...
masterenweb
 
Mensajes: 3
Registrado: Dom Jul 25, 2010 1:28 pm


Volver a Base de datos

¿Quién está conectado?

Usuarios navegando por este Foro: CommonCrawl [Bot] y 0 invitados