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

Triggers y problemas varios

Estas en el tema de Triggers y problemas varios en el foro de Mysql en Foros del Web. Hola, estoy haciendo una base de datos pero quiero hacer una cosa un poco complicada Veamos, tengo estas tablas: PELICULA: codigo (INT, clave primaria) stock ...
  #1 (permalink)  
Antiguo 16/01/2009, 15:05
 
Fecha de Ingreso: enero-2009
Mensajes: 1
Antigüedad: 15 años, 3 meses
Puntos: 0
Triggers y problemas varios

Hola, estoy haciendo una base de datos pero quiero hacer una cosa un poco complicada

Veamos, tengo estas tablas:

PELICULA:

codigo (INT, clave primaria)
stock (int)

y luego una linia de factura con

id: (INT, clave primaria)
peli (INT, ID de la pelicula)

---------------------------------

Ahora viene lo bueno, quiero que de alguna manera me guarde en una variable el resultado de un SELECT

CREATE PROCEDURE prod (IN id INT, OUT salida INT)
BEGIN
SELECT stock INTO salida
FROM pelicula p
WHERE id = p.codigo;
END;

y luego hago esto

CREATE TRIGGER stock0 AFTER INSERT ON linia_factura
FOR EACH ROW BEGIN
DECLARE id,stoc INT;
SET id = linia_factura.peli;
CALL prod (id,stoc);
IF stoc<=0 THEN
UPDATE pelicula SET stock=10 WHERE codigo=id;
END IF;
END;

pero me da error, en la linia 5 (WHERE id = p.codigo;), no entiendo como hacer que en añadir una nueva linia de factura, que me mire si el stock es 0 y si fuera asi, me añadiera 10

gracias de antemano
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 21:11.