Вниз
Скачать: CL | DM;

Триггеры, старое и новое значение поля   Найти похожие ветки 

← →
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 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.035 c
1-1094398352
Loaders
2004-09-05 19:32
2004.09.19
RXLib 2.75


14-1093695612
able
2004-08-28 16:20
2004.09.19
Что Вы думаете про траффик инспектор?


6-1089763864
Гоги
2004-07-14 04:11
2004.09.19
ProgressBar


14-1093625014
gn
2004-08-27 20:43
2004.09.19
Знаю что надоел но всёже


1-1094202727
Kernel
2004-09-03 13:12
2004.09.19
WebBrowser через прокси




   Наверх