Форум: "Базы";
Текущий архив: 2004.09.19;
Скачать: [xml.tar.bz2];
ВнизТриггеры, старое и новое значение поля Найти похожие ветки
← →
ydv (2004-08-23 15:17) [0]пишу триггер в СУБД MS SQL, не знаю как получить значение поля до изменения и после?
Пример кода:
CREATE TRIGGER upd_trig ON my_table
FOR UPDATE
AS
IF UPDATE (test)
BEGIN
DECLARE @tmp INT
SET @tmp = ... - новое значение поля test
END
← →
KSergey © (2004-08-23 15:19) [1]> пишу триггер в СУБД MS SQL, не знаю как получить значение
> поля до изменения и после?
Ну елки... А книги?? Ну нельзя освоить MS SQL путем перебирания сочетаний клавиш - жизни не хватит!!!
см. таблицы Inserted и Deleted в справке.
← →
stone © (2004-08-23 15:19) [2]см. inserted tables в BOL
← →
ydv (2004-08-23 15:19) [3]нету книг, в инете тоже не нашел
← →
Skyle © (2004-08-23 15:20) [4]BOL - Books OnLine - хелп к клиентским тулзам MS SQL.
← →
ydv (2004-08-23 15:23) [5]смотрю - нету ни малейшего намека на
REFERENCING OLD AS ...
NEW AS ...
← →
KSergey © (2004-08-23 15:23) [6]> [4] Skyle © (23.08.04 15:20)
> BOL - Books OnLine - хелп к клиентским тулзам MS SQL.
Вы его наверное просто не читали ;)
← →
ydv (2004-08-23 15:25) [7]у меня его нету
← →
Skyle © (2004-08-23 15:26) [8]
> [6] KSergey © (23.08.04 15:23)
А может я его только там и читал? ;-)
← →
Skyle © (2004-08-23 15:29) [9]
> Skyle © (23.08.04 15:26)
Хотя вру... Ещё в MSDN со всеми вытекающими...
← →
ydv (2004-08-23 15:30) [10]смотрю в книжках, которые есть - нет там ничего. А вы видно сами не знаете? А то давно бы подсказали.
← →
KSergey © (2004-08-23 15:30) [11]> [5] ydv (23.08.04 15:23)
И что?
Блин, ну не прорветесь без книжек, ну что за бред-то??
Мысль вам для раздумывания: триггер в MS SQL вызывается на все записи, попавшие в команды INSERT/UPDATE ОДИН РАЗ
← →
KSergey © (2004-08-23 15:32) [12]> [10] ydv (23.08.04 15:30)
> смотрю в книжках, которые есть - нет там ничего. А вы видно
> сами не знаете? А то давно бы подсказали.
Ответ буквально на вопрос невозможен. Причины - см. [11]
← →
ydv (2004-08-23 15:32) [13]KSergey ©
во как... и как же мне быть?
← →
Skyle © (2004-08-23 15:34) [14]http://msdn.microsoft.com/library/default.asp
Начинать с поиска "CREATE TRIGGER".
← →
ydv (2004-08-23 15:38) [15]ну так если он один раз вызывается для всех записей? а мне-то надо, посмотреть значение одной записи, значит такой возможности нет
← →
A_N_D © (2004-08-23 16:34) [16]select test from deleted до
select test from inserted после
← →
KSergey © (2004-08-24 09:55) [17]> [15] ydv (23.08.04 15:38)
> ну так если он один раз вызывается для всех записей? а мне-то
> надо, посмотреть значение одной записи, значит такой возможности
> нет
Что значит "мне надо"?? Ну можете взять первую из inserted и успокоиться (или последнюю - ничем не хуже)
Но что делать с остальными?
← →
Ega23 © (2004-08-24 10:02) [18]Ты проблему по-нормальному изложи, зуб даю, что решение весьма простое и тривиальное...
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.09.19;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.034 c