Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

AndersonVaz

Trigger bloqueio Aplicativo

Recommended Posts

Boa noite,

 

Pessoal eu tenho uma tabela onde o meu sistema grava informações porém outros módulos podem acessar esta tabela e fazer alterações, mas eu tenho uma situação específica onde estou com a idéia de criar uma trigger para saber qual aplicativo está efetuando o Insert, update pois preciso restringir a gravação para apenas um aplicativo, preciso retornar uma mensagem para a aplicação dizendo que a operação nao pode ser efetuada.

 

Eu não posso bloquar via programação isto pois é um caso em isolado devido a uma replicação que foi montada.

 

Exemplo:

 

Exe_A, Exe_B e Exe_C

 

 

Trigger: se o aplicativo for <> de Exe_A, enviar mensagem de erro ao aplicativo.

 

 

 

 

Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Boa noite,

 

Pessoal eu tenho uma tabela onde o meu sistema grava informações porém outros módulos podem acessar esta tabela e fazer alterações, mas eu tenho uma situação específica onde estou com a idéia de criar uma trigger para saber qual aplicativo está efetuando o Insert, update pois preciso restringir a gravação para apenas um aplicativo, preciso retornar uma mensagem para a aplicação dizendo que a operação nao pode ser efetuada.

 

Eu não posso bloquar via programação isto pois é um caso em isolado devido a uma replicação que foi montada.

 

Exemplo:

 

Exe_A, Exe_B e Exe_C

 

 

Trigger: se o aplicativo for <> de Exe_A, enviar mensagem de erro ao aplicativo.

 

 

 

 

Obrigado.

 

 

Anderson,

 

você pode criar uma tigger de insert / update com o seguinte código:

 

-- Obtem o nome do programa daquela conexão

declare @program nchar(256)

select @program = program_name from master.dbo.sysprocesses where spid = @@SPID

 

-- Verifica se o programa é igual ao nome do programa que pode alterar os dados

if @program <> 'Exe_A'

begin

-- Dá a mensagem de erro

Print 'Sistema não tem permissão para alteração dos dados'

end

else

begin

-- Altera o dado

Print 'Sistema pode incluir' -- coloque o insert / update ao invés do print

end

 

Espero que te ajude.

 

[]s.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.