Ir para conteúdo
Fórum Script Brasil
  • 0

Validação em Trigger


Tarsio Alvares

Pergunta

Bom dia senhores,

Sou novo no forúm e estou precisando de uma ajuda. O cenário é o seguinte: dois bancos de dados, com uma tabela cliente em cada banco. Preciso criar uma trigger que, ao quando um novo cliente for inserido na tabela clientes do DB1, a trigger insira os mesmos valores na tabela clientes do DB2. porém, a trigger deve verificar se o cliente já existe na tabela clientes do DB2 antes de inserir. Caso o cliente já exista, a trigger não deve fazer nada, caso contrario deve inserir os valores.

Como eu poderia fazer essa verificação dentro da trigger? a trigger em si eu sei como criar, porém essa verificação não.

Obrigado pela ajuda,

Tarsio.

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Boa tarde Tarsio,

A trigger será acionada apenas quando for realizar Insert? Olhe se no Update também não deverá ser acionada...

No comando que manipulará a tabela, você passará vários valores, referenciando várias colunas. Estas mesmas informações você conseguirá visualizar na tabela INSERTED.

Ao chamar a trigger, a tabela INSERTED será criada pelo sql. É nela que estarão os dados (select * from inserted).

Idenfitique os campos que precisará "bater" e faça seu script. :.)

Link para o comentário
Compartilhar em outros sites

  • 0

pegando um ganho do fulvio, seria mais ou menos assim

CREATE TRIGGER tgVerificaDuplo ON CLIENTES

FOR INSERT, UPDATE

AS

DECLARE @IDCLIENTE INT SET @IDCLIENTE = (SELECT CODCLIENTE FROM INSERTED)

IF EXISTS (

SELECT IDCLIENTE FROM dbo.BD2 WHERE IDCLIENTE = @IDCLIENTE

BEGIN

ROLLBACKTRANSACTION

RAISERROR('JÁ EXISTE ESSA ID',15,1)

RETURN

END;

)

-- Caso não exista, coloque seu insert aqui.

Não testei, mas nessa lógica ai dá pra fazer.

[]'s

Ricardo Prado

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...