trigger correcto

05/02/2004 - 17:40 por Racsus | Informe spam
Hola

he aplicado el siguiente codigo a mi tabla para que cuando
el usuario modifique un campo check mire si hay algun otra
fila con los mismos indices que tiene el check activo y lo
desactive en ese caso. Este es el codigo que he utilizado
para mi trigger.

CREATE TRIGGER [CLIDIR_PREDE] ON dbo.CLIENTES_DIRECCIONES
FOR INSERT, UPDATE
AS
IF UPDATE(CLIDIR_PREDE) AND (@@ROWCOUNT = 1)
UPDATE [dbo].[CLIENTES_DIRECCIONES]
SET CLIDIR_PREDE = 0
FROM inserted
WHERE [dbo].[CLIENTES_DIRECCIONES].
[CLIDIR_CODCLIENTE] = inserted.CLIDIR_CODCLIENTE
AND inserted.CLIDIR_PREDE = 1
AND NOT ( [dbo].[CLIENTES_DIRECCIONES].
[CLIDIR_CODIGO] = inserted.CLIDIR_CODIGO
AND [dbo].[CLIENTES_DIRECCIONES].
[CLIDIR_CODCLIENTE] = inserted.CLIDIR_CODCLIENTE)

Aparentemente cuando modifico el campo CLIDIR_PREDE no
hace nada. porque?

gracias
 

Leer las respuestas

#1 Jose Mariano Alvarez \(MUG\)
05/02/2004 - 18:34 | Informe spam
Envia la instruccion UPDATE que usas.



Jose Mariano Alvarez
Comunidad de base de datos
Grupo de Usuarios Microsoft
www.mug.org.ar



"Racsus" wrote in message
news:a31001c3ec06$c01275a0$
Hola

he aplicado el siguiente codigo a mi tabla para que cuando
el usuario modifique un campo check mire si hay algun otra
fila con los mismos indices que tiene el check activo y lo
desactive en ese caso. Este es el codigo que he utilizado
para mi trigger.

CREATE TRIGGER [CLIDIR_PREDE] ON dbo.CLIENTES_DIRECCIONES
FOR INSERT, UPDATE
AS
IF UPDATE(CLIDIR_PREDE) AND (@@ROWCOUNT = 1)
UPDATE [dbo].[CLIENTES_DIRECCIONES]
SET CLIDIR_PREDE = 0
FROM inserted
WHERE [dbo].[CLIENTES_DIRECCIONES].
[CLIDIR_CODCLIENTE] = inserted.CLIDIR_CODCLIENTE
AND inserted.CLIDIR_PREDE = 1
AND NOT ( [dbo].[CLIENTES_DIRECCIONES].
[CLIDIR_CODIGO] = inserted.CLIDIR_CODIGO
AND [dbo].[CLIENTES_DIRECCIONES].
[CLIDIR_CODCLIENTE] = inserted.CLIDIR_CODCLIENTE)

Aparentemente cuando modifico el campo CLIDIR_PREDE no
hace nada. porque?

gracias

Preguntas similares