USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Trigger no Banco de Dados SQL Server 2000
Braga
RECIFE
PE - BRASIL
Postada em 25/10/2004 17:35 hs            

Gostaria de saber como juntar a sql da minha trigger com uma
string (pode ser uma variável ou até a sql direto).

Ex:

- juntando com uma variável

CREATE TRIGGER trg_TabMov_Update_Insert ON TABMOV FOR INSERT,UPDATE AS

if exists (Select * from DBIntegrar.dbo.TabIntegracao where upper(int_cTabela) = 'TRANSTABMOV_ENV' and int_cStatus = 'A' )
 Declare @strWhere Varchar(1000)

 set @strWhere = (Select int_cFiltro from DBIntegrar.dbo.TabIntegracao where upper(int_cTabela) = 'TRANSTABMOV_ENV')

 Insert into DBIntegrar.dbo.TransTabMov_Env (ACESSO , TIPO , DOCUMENTO)
 select ACESSO , TIPO , DOCUMENTO from Inserted Where + @strWhere


OU

- juntando com a própria SQL

CREATE TRIGGER trg_TabMov_Update_Insert ON TABMOV FOR INSERT,UPDATE AS

if exists (Select * from DBIntegrar.dbo.TabIntegracao where upper(int_cTabela) = 'TRANSTABMOV_ENV' and int_cStatus = 'A' )
 Insert into DBIntegrar.dbo.TransTabMov_Env (ACESSO , TIPO , DOCUMENTO)
 select ACESSO , TIPO , DOCUMENTO from Inserted Where + (Select int_cFiltro from DBIntegrar.dbo.TabIntegracao where upper(int_cTabela) = 'TRANSTABMOV_ENV')


gostaria de saber como fazer isso e se não for Incomodo gostaria que me mandasse um ex.

Obrigado.

     
Alê
SÃO PAULO
SP - BRASIL
Postada em 26/10/2004 09:18 hs         
Olá Braga, bom dia.
 
É possível executar qualquer instrução SQL dentro de uma Trigger, Function ou Procedure usando a função EXECUTE() do SQL. Ela recebe uma string que pode conter o seguinte texto ( conforme o seu exemplo ) :
 
EXECUTE('Insert into DBIntegrar.dbo.TransTabMov_Env ' +
            '(ACESSO , TIPO , DOCUMENTO) ' +
            ' select ACESSO , TIPO , DOCUMENTO ' +
            ' from Inserted Where ' + @strWhere)
 
Certifique-se que esta string não contém erros de sintaxe. Você pode testá-la no Query Analyser. Se ela executar sem erros lá, terá o mesmo efeito dentro de sua trigger.
 
Espero ter colaborado, boa sorte.
 
     
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2025   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página