Es que modifica un solo registro por vez.

Gracias.

 

 

  _____  

De: [email protected] [mailto:[EMAIL PROTECTED] En nombre de Jose Mariano
Alvarez
Enviado el: domingo, 06 de julio de 2008 21:59
Para: [EMAIL PROTECTED]
Asunto: [dbms] Disparador

 

A mi juicio no es correcto.

Asume que solo se va a modificar un registro por vez.

 

Una forma multirow seria (seguramente no es la logica de lo que quieres
hacer)

 

update stock 
set stock=stock + Inserted.ingcantidad
from inserted
where 
 stock.articuloid = inserted.articuloid 
and stock.depositoid = inserted.depositoid 

 

 

.Sugiero que evites hacer la logica en el trigger y lo hagas en un stored
procedure o en la aplicacion.

 


-------------------------------- 
Atte.
Ing. Jose Mariano Alvarez
SQL Total Consulting 

On Sun, Jul 6, 2008 at 21:20, Jesús dos Santos <[EMAIL PROTECTED]>
wrote:

Lista, buenas noches, pido vuestra opinión sobre el siguiente disparador en
una tabla sql 2000, que según un dato quiero actualizar otra tabla, esto asi
es correcto? Como puedo hacer puedo saber que el update encontró un
registro?, pues de lo contrario lo tiene que crear.

 

CREATE TRIGGER [SumarStock] ON [dbo].[Articulos_Ing] 

FOR INSERT

AS

update stock set stock=stock+(select ingcantidad from inserted) 

where articuloid=(select inserted.articuloid from inserted) and
depositoid=(select inserted.depositoid from inserted)

 

Muchas Gracias.

 

 

Responder a