problema con actualizacion en procedimiento

04/03/2008 - 18:47 por warface75 | Informe spam
Tengo un procedimiento que realiza una actualizacion de una tabla realizando
una comparacion con 3 campos y asi realizar la actualizacion de dos diferentes
el problema es que al tener dos registros similares y solo diferente en uno
de ellos afecta a los dos
por ejemplo
prodID IDCART LADO CANTIDAD
ACC125 2778545 DER 25
ACC125 2778545 IZQ 10

y modifico el que dice izq con cantidad de 30 , me afecta al que tiene lado
"DER" y me pone ambos con cantidad de 25 lado "DER"

el procedimiento esta como sigue:

@IdCart nvarchar(50),
@ProdID nvarchar(20),
@Lado nvarchar(12),
@Cantidad int
)
AS

UPDATE OrdenSecuencial

SET
Lado = @Lado,
Cantidad = @Cantidad


WHERE
IdCart = @IdCart
AND
ProdID = @ProdID
and
Lado=@Lado or Lado='-'
 

Leer las respuestas

#1 Isaias
04/03/2008 - 18:53 | Informe spam
Que significa Lado='-' ?

Si lo intentas asi:

WHERE ( IdCart = @IdCart AND ProdID = @ProdID)
AND Lado=@Lado

Saludos
IIslas


"warface75" wrote:

Tengo un procedimiento que realiza una actualizacion de una tabla realizando
una comparacion con 3 campos y asi realizar la actualizacion de dos diferentes
el problema es que al tener dos registros similares y solo diferente en uno
de ellos afecta a los dos
por ejemplo
prodID IDCART LADO CANTIDAD
ACC125 2778545 DER 25
ACC125 2778545 IZQ 10

y modifico el que dice izq con cantidad de 30 , me afecta al que tiene lado
"DER" y me pone ambos con cantidad de 25 lado "DER"

el procedimiento esta como sigue:

@IdCart nvarchar(50),
@ProdID nvarchar(20),
@Lado nvarchar(12),
@Cantidad int
)
AS

UPDATE OrdenSecuencial

SET
Lado = @Lado,
Cantidad = @Cantidad


WHERE
IdCart = @IdCart
AND
ProdID = @ProdID
and
Lado=@Lado or Lado='-'


Preguntas similares