Buscar

Lista de Exercicios Triggers

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

BANCO DE DADOS - TRIGGERS
1 - Qual o objetivo de utilizar Triggers em banco de dados?
O termo trigger (gatilho em inglês) define uma estrutura do banco de dados que funciona, como o nome sugere, como uma função que é disparada mediante alguma ação.
• geralmente essas ações que disparam as triggers são alterações nas tabelas por meio de operações de inserção, exclusão e atualização de dados (insert, delete e update).
• Um gatilho está intimamente relacionado a uma tabela, sempre que uma dessas ações é efetuada sobre essa tabela, é possível dispará-lo para executar alguma tarefa.
2 - Qual a lógica existente nas tabelas de Vendas e Caixa?
Sempre que forem registradas ou excluídas vendas, essas operações devem ser automaticamente refletidas na tabela de caixa, aumentando ou reduzindo o saldo.
3 - Qual o comportamento que as duas Triggers criadas no exercício estão fazendo?
A primeira trigger atualiza o saldo final da tabela caixa, somando o valor da venda cadastrada, no registro cuja data seja igual à data da venda
A segunda trigger é para instrução de delete, que devolverá o valor ao caixa quando uma venda for excluída.
4 - Em qual momento das Triggers criadas são disparadas?
Sendo disparados com as operações de INSERT e DELETE da tabela de vendas.
5 - É possível declarar uma variável dentro de uma Triggers, citar um exemplo?
Sim, são utilizadas variáveis internas para armazenar os valores das colunas e são utilizadas posteriormente para utilizar no INSERT ou UPDATE na tabela desejada.
Exemplo:
CREATE TRIGGER trg_Vendas_FI
ON Vendas
FOR INSERT
AS
BEGIN
DECLARE @Valor DECIMAL(10,2)
DECLARE @Data DATETIME
SELECT @Data = Data, @Valor = Valor FROM inserted
UPDATE Caixa SET SaldoFinal = SaldoFinal + @Valor
WHERE Data = CONVERT(date, @Data)
PRINT 'Somou o caixa! -> +' + CAST(@valor AS NVARCHAR)
END
@Data e @Valor são variáveis internas.

Continue navegando