MySQL - error 1442

 
Vista:

error 1442

Publicado por sari (2 intervenciones) el 20/04/2007 21:18:34
hola amigos estoy utilizando un trigger

create trigger recep
after insert on recep_mat_prima
for each row
begin

DECLARE cant_entrante float;

SELECT cant_ent into cant_entrante
FROM recep_mat_prima
WHERE regis_mp=new.regis_mp;

update recep_mat_prima set saldo_actual=cant_entrante where regis_mp=new.regis_mp;

END;

y cuando voy a la tabla para insertar me manda este error

-> //
ERROR 1442 (HY000): Can't update table 'recep_mat_prima' in stored function/trig
ger because it is already used by statement which invoked this stored function/t
rigger.

por favor ayudenmen!!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:error 1442

Publicado por kain (124 intervenciones) el 21/04/2007 16:35:40
hola:

el trigger lo estas manejando sobre el insert de recep_mat_prima , lo que quiere decir que aun no se a ejecutado el insert, por lo tanto no puedes actualizar el registro.

peroooo, siempre hay un pero, <cambia esto:puedes hacerlo de esta manera:

create trigger recep
after insert on recep_mat_prima
for each row
begin

DECLARE cant_entrante float;

SELECT cant_ent into cant_entrante
FROM recep_mat_prima
WHERE regis_mp=new.regis_mp;

set new.saldo_actual=cant_entrante;

END;

hara lo que necesitas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:error 1442

Publicado por Augusto (1 intervención) el 18/07/2009 20:01:46
Muchas gracias me estaba volviendo loco y me funcionó tu respuesta....:-)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar