Форум программистов, компьютерный форум, киберфорум
Microsoft SQL Server
Войти
Регистрация
Восстановить пароль
 
1 / 1 / 0
Регистрация: 04.12.2012
Сообщений: 55
1

Реализовать триггер

09.06.2014, 17:38. Просмотров 396. Ответов 1
Метки нет (Все метки)

всем привет, прошу подсказать, что я сделал не так.
задача сделать триггер, который, при update какой-либо строки, если idпротокола не = idпротокола отменяет операцию.

я сделал так:
SQL
1
2
3
4
5
6
7
8
CREATE TRIGGER ЗапретПрото ON Заказ
FOR UPDATE 
AS
 IF ((SELECT НомерПротокола FROM INSERTED) <> (SELECT НомерПротокола FROM DELETED))
       BEGIN
  raiserror('Нельзя менять протокол.', 16, 1)
  ROLLBACK tran
    END
но он работает всегда. подскажите, пожалуйста, что не так. заранее спасибо

Добавлено через 10 минут
вернее, задача в том, чтобы триггер запрещал изменять НомерПротокола у уже сохраненных записей. думаю так понятней.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
09.06.2014, 17:38
Ответы с готовыми решениями:

Реализовать триггер
Имеем таблицу Номер(Код_номера, код_категории), каждый номер имеет свою Категорию(Код_категории,...

Триггер для добавления к строке название таблицы, в которой содержится триггер
Есть таблицы База_Практик. В неё добавляю предприятие, и автоматически нужно добавить это...

Триггер для добавления к строке название таблицы, в которой содержится триггер
Есть таблицы База_Практик. В неё добавляю предприятие, и автоматически нужно добавить это...

Реализовать триггер на вставку данных в таблицу и на модификацию данных
Всем привет..с трудом дается тема триггеры ))запросы пишу хорошо,а вот с ними проблема... Дана...

1
60 / 60 / 21
Регистрация: 08.02.2013
Сообщений: 262
11.06.2014, 09:54 2
поменяй условие на
SQL
1
IF EXISTS (SELECT 1 FROM inserted WHERE id_протокола  IN (SELECT id_протокола FROM Заказ)
если я правильно понял, что у тебя в таблице не должно быть протоколов с одинаковыми айди, но вообще просто первичным ключом бы сделал и не парился, триггер - лишнее
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.06.2014, 09:54

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Разработать триггер, запускаемый при занесении новой строки в таблицу. Триггер должен увеличивать счетчик ч
Разработать триггер, запускаемый при занесении новой строки в таблицу. Триггер должен увеличивать...

Реализовать Д-триггер с входом асинхронной загрузки
Здравствуйте! Вот задание: В виде vhdl файла реализовать D-триггер с входом асинхронной загрузки...

Как реализовать триггер (MySQL выдает ошибку)
Надо сделать вот такой триггер, но mysql выдает ошибку. Не подскажете что не так? create trigger...

Реализовать триггер, обеспечивающий при удалении ограничение целостности
Здравствуйте,уважаемые! Никак не могу разобраться с триггером...уже весь интернет перерыл(...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.