Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Trigger

Estas en el tema de Trigger en el foro de SQL Server en Foros del Web. Un gusto saludarlos. Tengo una duda sobre el funcionamiento de los Trigger, ya que hasta ahora no habia tenido la oportunidad de trabajar con ellos. ...
  #1 (permalink)  
Antiguo 19/07/2017, 16:40
Avatar de Namiwis  
Fecha de Ingreso: mayo-2013
Ubicación: Crustaceo Cascarudo
Mensajes: 162
Antigüedad: 11 años, 6 meses
Puntos: 10
Trigger

Un gusto saludarlos.

Tengo una duda sobre el funcionamiento de los Trigger, ya que hasta ahora no habia tenido la oportunidad de trabajar con ellos.

La teoria indica que, un trigger se ejecuta despues de alguna accion, Insert, Delete, Update.

Tengo una tabla de Ventas, cuando una venta se realice, esta se inserta aqui, e inmediantamente necesito que el Trigger se ejecute, descontando del Almacen el articulo o articulos vendidos...

Como puede recibir o como puedo hacerle llegar al Trigger el valor Nombre del Producto que debe descontar?

Alguien tendra por ahi alguna anotacion como realizar esto?

Pd. No he intentado nada, por que sinceramente no se por donde comenzar

Saludos.
__________________
http://binarysuns.com.mx/
  #2 (permalink)  
Antiguo 19/07/2017, 20:28
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Trigger

Los triggers solo tienen como datos de entrada los mismos que componen los campos de la tabla donde se define el trigger. Esto quiere decir que solo cuentas con esos valores para resolver el problema. Nada mas que los datos que enviaste a ESA tabla.
Usualmente una tabla de ventas está vinculada a un detalle de venta, que es donde van los ID de cada articulo vendido. A su vez la venta, si es el comprobante de la venta, se asocia por su ID con cada uno de los productos vendidos y de esa forma puedes, con solo ese dato, obtener la lista de productos a procesar, las cantidades y hacer el retiro de stock.
En cualquier caso, estoy dandote solo una descripcion teórica porque sin conocer la estructura de los datos de tu base no te puedo aportar una solución mas concreta.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 20/07/2017, 07:36
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 18 años, 3 meses
Puntos: 774
Respuesta: Trigger

El trigger maneja 2 tablas una llamada inserted y otra deleted, en estas se encuentra la informacion de la tabla afectada ya sea por un delete, update o insert, entonces por ejemplo si agregaste un producto este apareceria en la tabla inserted, por lo que puedes hacer un select a esa tabla, sacar los datos del producto y hacer las operaciones necesarias con estos datos(joins a otras tablas etc)
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me

Etiquetas: tabla, trigger
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:32.