Ver Mensaje Individual
  #2 (permalink)  
Antiguo 04/02/2015, 06:16
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
Respuesta: Bajas y modificaciones de registros no existentes

Tu pregunta es algo mezclado entre programación y BBDD, la solución que buscas está en realidad del lado de PHP y no de MySQL, porque MySQL no está cometiendo ningun error.

Te lo explico de este modo: En los lenguajes de programación se valida el resultado de una ejecución no para saber si la query en sí trajo resultados, sino para verificar que no hubo fallos de ejecución. Simplemente es eso.

Cuando la base devuelve TRUE significa simplemente que no hubo errores sintacticos, de servidor, de conexión, de soporte, de permisos, etc... Pero eso no significa que haya hecho o devuelto algo.

1) Una consulta SLEECT puede no fallar, pero tampoco devolver datos, porque no hay datos que cumplan la condición. Sencillamente devolverá una tabla vacía, donde existen los encabezados de cada columna, pero no hay registros de datos.
Y eso no es un error.

2) Un INSERT puede fallar por datos, y dependiendo de si se incluyó la clausula IGNORE o no en la sentencia, puede o no devolver un error.

3) UPDATE puede devolver errores por datos, pero si no se cumplen las condiciones no devuelve error. Simplemente no cambio nada.

El DELETE, en cambio, no devuelve errores, porque si falla por datos que no se cumplen, no hace nada.
Pero en todos los casos (INSERT/UPDATE/DELETE) MySQL devuelve cierta información clave: La cantidad de registros afectados, y eso es lo que tienes que validar, además de si hubo o no errores.

¿Se entiende?

Las librerías de acceso a datos como las de PHP para MYSQL tienen funciones que pueden leer la información de ese dato que MySQL devuelve. Simplemente debes aprender a usarla.

Muevo tu post a PHP para que te ayuden con esa parte.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)