Создать триггер в SQL Server 2008 - PullRequest
1 голос
/ 06 мая 2010

Я пытаюсь создать триггер для базы данных кино. Мне нужно обновить его после добавления рейтинга для фильма с текстом «добавлен рейтинг». Имя таблицы

movie_ratings

первичный ключ = рейтинг_фильма

Я не совсем уверен, как это сделать, я смотрел онлайн, но все еще не уверен Мне было интересно, может ли кто-нибудь помочь.

Спасибо

1 Ответ

2 голосов
/ 06 мая 2010

Вот синтаксис для создания триггера, который будет срабатывать при вставке строки.

create trigger movie_rating_added on movie_ratings for insert
as 
   -- trigger code goes here

go

Внутри триггера у вас есть доступ к виртуальной таблице с именем inserted, которая имеет ту же схему, что и movie_ratings, но содержит только строки, которые были вставлены.

Мне не совсем ясно, что именно вы хотите, чтобы триггер делал, но, например, вы могли бы сделать что-то вроде этого:

create trigger movie_rating_added on movie_ratings for insert
as
    update m set last_action = "rating added"
    from movies m
    join inserted i on i.movie_id=m.id
go

Что предполагает существование некоторых полей и таблиц, которых у вас может не быть, но, надеюсь, это даст вам полезный пример.

...