MySQL - PROBLEMA CON TRIGGER

 
Vista:
sin imagen de perfil
Val: 1
Ha disminuido su posición en 93 puestos en MySQL (en relación al último mes)
Gráfica de MySQL

PROBLEMA CON TRIGGER

Publicado por ezequiel (1 intervención) el 21/02/2017 21:17:36
Hola tengo que resolver el siguiente ejercicio que me acaban de enviar en una empresa para una prueba mediante un trigger pero no me deja el phpmyadmin.
"Definir un trigger en la tabla Accounts que le coloque el valor (999) al campo Fax cada vez que se genere un nuevo registro.". El campo FAX está en la tabla Accounts, por lo que al parecer ni bien inserto un registro en accounts deberia actualizar el campo fax al toque.

Hay alguna manera de hacer esto? Aunque sea con un procedimiento? Les agradecería que me lo detallaran ya que no encuentro en ningún lado ejemplos de triggers como el mío (la mayoría es utilizando dos tablas).
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
Imágen de perfil de xve
Val: 796
Oro
Ha mantenido su posición en MySQL (en relación al último mes)
Gráfica de MySQL

PROBLEMA CON TRIGGER

Publicado por xve (1151 intervenciones) el 22/02/2017 07:55:30
Hola Ezequiel, esto tal y como comentas, es con un trigger... seria algo así:

1
2
3
CREATE TRIGGER Accounts_insert AFTER INSERT ON `Accounts`
FOR EACH ROW
UPDATE Accounts SET Fax='999' WHERE idAccounts=NEW.idAccounts;

Coméntanos, ok?
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

PROBLEMA CON TRIGGER

Publicado por Ezequiel (2 intervenciones) el 25/02/2017 22:22:50
Hola, perdón por la demora. Probé el mismo ejemplo que me diste pero con una tabla de empleados. La sintaxis es esta:

CREATE TRIGGER Empleados_insert AFTER INSERT ON `empleados`
FOR EACH ROW UPDATE empleados SET telefono='999' WHERE idempleados=NEW.idempleados

El problema es que me tira el siguiente error cuando quiero insertar un nuevo registro en la tabla empleados:
Can't update table "empleados" in stored function/trigger because it is already by user statement which invoked this stored function/trigger

La tabla "empleados" tiene 3 campos: idempleados, nombre, telefono, el cual al insertar un nuevo registro coloco el nombre y el telefono.

Espero 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