Jump to content


Photo

Actualizar dos tablas a la vez


  • Please log in to reply
2 replies to this topic

#1 victormuñoz

victormuñoz

    Newbie

  • Miembros
  • Pip
  • 9 posts

Posted 14 July 2014 - 09:02 PM

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.
  • 0

#2 cram

cram

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 832 posts
  • LocationMisiones, Argentina

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.
  • 0

#3 enecumene

enecumene

    Webmaster

  • Administrador
  • 7419 posts
  • LocationRepública Dominicana

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:

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  :D

Saludos.
  • 0




IP.Board spam blocked by CleanTalk.