Ver Mensaje Individual
  #12  
Antiguo 10-06-2016
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Reputación: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Cita:
Empezado por darkerbyte Ver Mensaje
[...]tengo una tabla de productos con un campo llamado 'Existencia'
Código SQL [-]
START TRANSACTION;
INSERT INTO ventas(idVenta, fecha, hora, cliente, vendedor, turno, descuento)
                 VALUES (16, '2016-06-08', '22:19:12', 1, 2, 1, 0.00);
INSERT INTO ventas_partidas(idVenta, idProd, cantidad, precio_compra, precio_venta)
                  VALUES(16, 'PDE', 3.00, 29.00, 35.00);
UPDATE productos SET almacen=almacen-3.00 WHERE clave='PDE';   -- Esta instrucción es donde esta mi duda
1. ¿El campo se llama realmente Existencia o almacen?

2. Te recomiendo prescindir de valores literales en sentencias SQL de aplicaciones que no son de uso interno o de pruebas. Es mejor y más seguro usar parámetros ("...Values (..., :Cantidad..."). Quizá en la computadora del cliente 3.00 no sea lo que tú crees que es (configuración regional).

3. ¿Existe la remota posibilidad de que tengas dos productos con la misma clave?

4. ¿Tendrás algún disparador (trigger) involucrado con esas tablas y que no estés observando?

5. ¿Las diferencias inesperadas que se presentan son consistentes o varían sin sentido? ¿El error se presenta bajo un patrón común respecto a las cantidades que debería haber y las que hay?

Saludos misteriosos.
Responder Con Cita