Hola amigos, estoy desarrollando un sistema de base de datos en PHP y MySql, pero no se como actualizar dos tablas a la vez, me explico: tengo una tabla "materiales" (donde se ingresa cada material) y otra tabla "bajas" (donde se dan de baja los materiales), lo que quiero hacer es que cada vez que se realiza una baja, se descuente y actualice automaticamente la cantidad de la tabla materiales. Ruego que me pudieran ayudar por favor.
Gracias.

Actualizar dos tablas a la vez
Started by
victormuñoz
, Jul 14 2014 09:02 PM
2 replies to this topic
#1
Posted 14 July 2014 - 09:02 PM
#2
Posted 15 July 2014 - 06:38 AM
Por ahora lo que te puedo recomendar es usar un disparador (trigger) a un procedimiento (procedimiento almacenado) que actualice la cantidad que se supone será de a uno.
Aunque te comento que desde el punto de vista más técnico una baja no es una salida de existencia (stock) sino la eliminación de una fila de una tabla o sea de una instancia de entidad.
Si en tu modelo utilizas una fila por cada existencia (que puede ser una partida o algo así) entonces puedes utilizar un trigger desde el momento de eliminación ("baja").
Si por el contrario, la baja se da mediante el descuento de una cantidad [lo más común], deberías ver si es incremento o decremento y en el último caso utilizar un trigger desde la actualización.
Espero que te sirva de ayuda.
Saludos.
Aunque te comento que desde el punto de vista más técnico una baja no es una salida de existencia (stock) sino la eliminación de una fila de una tabla o sea de una instancia de entidad.
Si en tu modelo utilizas una fila por cada existencia (que puede ser una partida o algo así) entonces puedes utilizar un trigger desde el momento de eliminación ("baja").
Si por el contrario, la baja se da mediante el descuento de una cantidad [lo más común], deberías ver si es incremento o decremento y en el último caso utilizar un trigger desde la actualización.
Espero que te sirva de ayuda.
Saludos.
#3
Posted 15 July 2014 - 07:30 AM
En dado caso que la BD este alojado en un servidor donde no se permite crear SP y Triggers (Que es lo mas comun en la mayoria) puedes crear dos funciones en php donde cada uno realice la consulta que deseas hacer, por ejemplo:
Es solo una idea rapida
Saludos.
function descontar($id)
{
//bla bla. coneccon a la base de datos
$query = "UPDATE campo = campo - $id FROM tabla";
//Ejecutamos la consulta
}
function darBaja($id)
{
//bla bla. ingresamos la baja
descontar($id); // aqui hacemos el descuento
}
Es solo una idea rapida

Saludos.