Forums Últimos mensajes - Powered by IBM
 

TRIGGER BLOQUEO DEL REGISTRO

01/09/2005 - 19:00 por Emibona | Informe spam
La situacion es la siguiente cada vez que se inserta un registro un trigger
guarda en el registro el nombre del usuario que hace esto: (ver codigo)

ON CARGA
FOR INSERT
AS
update carga
set USUARIO = suser_sname()
where exists(select * from inserted as i
where i.registro = carga.registro)

Lo que no se es como hacer uno para UPDATE que verifique que el usuario
actual que esta modificando el registro sea el mismo que que INSERTO, de lo
contrario emita un ERROR para mo permitir el update. RAISERROR(" ")
 

Leer las respuestas

#1 Alejandro Mesa
01/09/2005 - 19:22 | Informe spam
Trata:

create trigger tr_carga_upd on dbo.carga
for update
as
set nocount on

if exists(
select
*
from
deleted
where
usuario != suser_sname()
)
begin
raiserror ('Error, no puede actualizar una fila si no fue quien la
inserto.', 16, 1)
return
end

go


AMB

"Emibona" wrote:

La situacion es la siguiente cada vez que se inserta un registro un trigger
guarda en el registro el nombre del usuario que hace esto: (ver codigo)

ON CARGA
FOR INSERT
AS
update carga
set USUARIO = suser_sname()
where exists(select * from inserted as i
where i.registro = carga.registro)

Lo que no se es como hacer uno para UPDATE que verifique que el usuario
actual que esta modificando el registro sea el mismo que que INSERTO, de lo
contrario emita un ERROR para mo permitir el update. RAISERROR(" ")

Preguntas similares