Este foro ya no está activo, así que no puedes publicar nuevas preguntas ni responder a las preguntas existentes.

Problema Doctrine

21 de noviembre de 2013

Estoy realizando inserciones en una base de datos, y por SQL en MySQL agregué un trigger (disparador) y un procedure (procedimiento almacenado), lo cual me trajo un error:

"An exception occurred while executing 'INSERT INTO"
"SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a
child row: a foreign key constraint fails"

Elimino los triggers y los procedure y el funcionamiento del sistema no tiene problemas. Investigué si por Doctrine se podían realizar estas acciones en la base de datos, y no entendí la parte del evento.

Por lo que se ve, hay que agregarlos como eventos: documentación Doctrine sobre eventos

Si me pudieran ayudar cómo es el funcionamiento de Symfony con Doctrine sobre estos temas (triggers, procedure).

Gracias


Respuestas

#1

En teoría los triggers deberían ser independientes de Doctrine y Symfony. Así que yo intentaría repasar bien el código del trigger para solucionar este error.

Si no te funciona de ninguna manera, lo que puedes intentar es ejecutar código SQL nativo con Doctrine. Y para unirlo a tu aplicación y que sea todo mucho más sencillo, en efecto hay que utilizar los lifecycle callbacks de Doctrine en Symfony2 para definir eventos en tus entidades de Doctrine.

@javiereguiluz

21 noviembre 2013, 9:50