SQL - UPDATE MASSIVO

   
Vista:

UPDATE MASSIVO

Publicado por SirSocket (13 intervenciones) el 21/08/2010 13:54:42
Buenas tardes, tengo un trigger que al actualizar la cantidad en una tabla me la actualiza en otra.
El trigger funcina perfectamente con 1 registro ,el problema es cuando se han actualizado varios registros.

Ahora mismo tengo esto

SELECT @PrecUnit = PrecUnit, @Quantidade = Quantidade, @IdCabecDoc = IdCabecDoc, @NumLinha = NumLinha
FROM inserted

UPDATE MiddleLinhasDoc
SET Quantidade = @Quantidade
WHERE IdCabecDoc = @IdCabecDoc and
NumLinha = @NumLinha

Como podeis ver cogo de la tabla de sql inserted los valores que se han actualizado, y asi obtengo también el numero de pedido(IdCabecDoc) y el numero de linea(@NumLinha)

pero y cuando tengo mas de un registro como puedo hacerlo??

Existe alguna manera de hacer algo asi????

while inserted i
update.....
set....
where idcabedoc = i.cabecdoc and
numlinhas = i.numlinhas

o sea recorrer todos los registros de inserted para ir actualizando mi tabla.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:UPDATE MASSIVO

Publicado por SirSocket (13 intervenciones) el 21/08/2010 15:33:24
YA LO SOLUCIONE LO DOY POR CERRADO EL TEMA DEJO MI CODIGO PARA EL QUE QUIERA VER COMO LO HIZE

UPDATE MiddleLinhasDoc
SET StatusLinha = 'UPD',
TipoDoc = @TipoDoc,
Quantidade = i.Quantidade - d.Quantidade
FROM MiddleLinhasDoc m
JOIN inserted i
ON m.IdCabecDoc = i.IdCabecDoc and
m.Numlinha = i.NumLinha
JOIN deleted d
ON i.IdCabecDoc = d.IdCabecDoc and
i.NumLinha = d.NumLinha
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar