ayuda con trigger

30/09/2004 - 21:17 por Claudio Valdés | Informe spam
Estimados:

quisiera saber de la instruccion "in (select distinct driverno from
inserted)" que significa "from inserted", porque esta no es una tabla

create trigger isrEmployees on employees
for insert, update
as

if update(driverno)

if exists(select driverno, count(*) from employees where driverno is
not null and
driverno in (select distinct driverno from inserted) group by
driverno
having count(*)>1)
Begin
raiserror('Numero de licencia repetido, se aborto la
operacion',16,1)
rollback tran
End

Agredeciendo su colaboracion

Atte,
Claudio Valdés
 

Leer las respuestas

#1 MAURICIO
30/09/2004 - 21:57 | Informe spam
Inserted es la tabla que contiene los registros que estas
ingresando
Deleted es la tabla que contiene los registros que
eliminas

Por ejemplo:
Si usas: Insert NombreTabla Values (Valor1, Valor2)

La tabla inserted que empleas en el Trigger tiene la
misma estructura que NombreTabla y almacena los valores
Valor1 y Valor2

Si usas: Delete NombreTabla Where NombreCampo=condicion

La tabla Deleted que empleas en el Trigger tiene la misma
estructura que NombreTabla y almacena los valores del
registro que cumple la condicion

Si usas: Update NombreTabla Set C1=NuevoV1

Aqui se usan las dos tablas:

Inserted tendra los nuevos valores representados por
NuevoV1

Deleted tendra los valores anteriores al cambio

Espero me hayas entendido

EXITOS


Mauricio




Estimados:

quisiera saber de la instruccion "in (select distinct


driverno from
inserted)" que significa "from inserted", porque esta no


es una tabla

create trigger isrEmployees on employees
for insert, update
as

if update(driverno)

if exists(select driverno, count(*) from employees


where driverno is
not null and
driverno in (select distinct driverno from


inserted) group by
driverno
having count(*)>1)
Begin
raiserror('Numero de licencia repetido, se


aborto la
operacion',16,1)
rollback tran
End

Agredeciendo su colaboracion

Atte,
Claudio Valdés


.

Preguntas similares