Ver Mensaje Individual
  #7 (permalink)  
Antiguo 12/05/2008, 12:07
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Re: Problema con trigger

Tienes que validar las cosas en la aplicación, sino, ¿qué sentido tiene enviarle a la base información que no podrá almacenar?
Uno de los tips centrales de todo método de optimización de bases de datos es recordarles a los programadores de las aplicaciones que la base de datos no tiene que hacer TODO el trabajo. Su función central es almacenar datos y responder consultas. Las validaciones de datos son asunto de las aplicaciones; en todo caso, antes de hacer una inserción deberías hacer una consulta de valiudación del tipo:
Código:
SELECT IF(COUNT(*) IS NULL, 0, COUNT(*)) 
FROM belongs_to
WHERE id_user=NEW.id_user
AND id_module=NEW.id_module
AND id_ir=NEW.id_ir
AND date_finsih=null) > 0;
esto te devolvería un valor cero (0) o mayor a cero y si te da cero mandás el INSERT,.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)