GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

[RESOLVIDO] Triggers no banco de dados sql - DADO ANTIGO E DADO NOVO

sql
trigger
Tags: #<Tag:0x00007fb3a08f8b48> #<Tag:0x00007fb3a08f8850>

#1

Boa noite pessoal,
Estou fazendo um projeto pro curso de informática e preciso usar trigger no banco de dados, mas não estou conseguindo cria-lo , cada site que pesquiso como faz aparece uma sintaxe diferente. Então eu preciso criar um trigger para guardar um preço antes de um update , depois do update e a data e hora.

Segue a tabela
Screenshot_9

eu pensei em fazer assim

‘create trigger AlteracaoPreco
on WQuarto
for update
as
insert into precoQuartoChange(id_quarto,precoAntes,precoDepois,data)
values(id_quarto,OLD.precoantes,preco,getDate())’

TABELA precoQuartoChange
Screenshot_10

provavelmente não está certo a forma de pegar os dados, porque eu não sei direito como pegar um dado antes da modificação e um dado depois , pesquisei na internet e não achei.]

Caso seja relevante , meu SQL SERVER é 12.0.2269.0


#2

Essa parte é bem relevante, já que cada banco de dados tem uma sintaxe diferente.

Tem a documentaçao aqui (inclusive explicando como acessar dados antigos e novos): https://docs.microsoft.com/en-us/sql/t-sql/statements/create-trigger-transact-sql?view=sql-server-2017&viewFallbackFrom=sql-server-2014


#3

Entendi , obrigado , vou dar uma olhada aqui e tentar fazer.