04/05/2006, 16:28
|
| | Fecha de Ingreso: marzo-2002
Mensajes: 16
Antigüedad: 22 años, 9 meses Puntos: 0 | |
Actualizar valores de una tabla al actualizar otra Saludos, la situación es la siguiente:
Como puedo conseguir que el valor de un registro en una tabla A se incremente/decremente automáticamente cada vez que se agregue/borre un renglón de una tabla B?
en un ejemplo sería más claro: Tabla Clientes:
codigo_cliente(clave primaria)
nombre
direccion nro_de_compras_efectuadas(campo a incrementar/decrementar)
...y otros campos ..... Tabla Ventas:
codigo_venta(clave primaria)
fecha
monto codigo_cliente(cada cliente puede hacer varias compras)
...y otros campos....
El objetivo es que cada vez que se efectúe una venta, de acuerdo con el "codigo_cliente" en la tabla "ventas" se incremente en la tabla "clientes" el valor de "nro_de_compras_efectuadas" de forma automática. y cada vez que se elimine una venta (por diversos motivos) se decremente automaticamente tal valor para el "codigo_cliente" especifico de la tabla "ventas" en la tabla "clientes".
Se podría ampliar la extensión del problema si agregamos el campo "cuanto_dinero_nos_ha_dado_este_cliente" en la tabla "clientes" y ese valor fuese la suma de todos los renglones con similar "codigo_cliente" de la tabla "ventas".
Claro que cada vez que se efectúe una venta, se puede hacer por programación externa (accedo desde VB6, un webservice y además por ASP.Net) usando una segunda (y tercera) consulta a la BD; pero por asuntos de integridad preferiría que fuese el motor del SQL Server 2000 quien haga estos ajustes a los datos.
No domino el SQL Server, poseo conocimientos corrientes, realmente no sé que mecanismos puedo utilizar para llevar a cabo esta tarea (de ser viable claro está): procedimientos almacenados, cursores, etc..... por lo tanto no sabría como empezar a atacar el problema. Toda sugerencia será útil.
Gracias de antemano. |