forecasting
Programmer
- May 2, 2002
- 130
When a time stamped record is inserted from a separate application, a trigger is executed that expands the time stamp into several fields. However, I discovered that the trigger code is updating every record in the table, not just the one being inserted. Any ideas about how to stop this?
CREATE TRIGGER [FILLDL2234A] ON dbo.DL2234A
FOR INSERT,UPDATE
AS
BEGIN
UPDATE DL2234A
SET
FYEAR = DATEPART(YYYY,STAMP-(.5/1440)),
DAYOFWEEK = DATEPART(DW,STAMP-(.5/1440)),
FDAY = DATEPART(DD,STAMP-(.5/1440)),
FMONTH = DATEPART(MM,STAMP-(.5/1440)),
FWEEK = DATEPART(WK,STAMP-(.5/1440)),
FHOUR = DATEPART(HH,STAMP-(.5/1440)),
FDATE = CONVERT(CHAR,STAMP-(.5/1440),101),
FTIME = CONVERT(CHAR,STAMP,108)
END
CREATE TRIGGER [FILLDL2234A] ON dbo.DL2234A
FOR INSERT,UPDATE
AS
BEGIN
UPDATE DL2234A
SET
FYEAR = DATEPART(YYYY,STAMP-(.5/1440)),
DAYOFWEEK = DATEPART(DW,STAMP-(.5/1440)),
FDAY = DATEPART(DD,STAMP-(.5/1440)),
FMONTH = DATEPART(MM,STAMP-(.5/1440)),
FWEEK = DATEPART(WK,STAMP-(.5/1440)),
FHOUR = DATEPART(HH,STAMP-(.5/1440)),
FDATE = CONVERT(CHAR,STAMP-(.5/1440),101),
FTIME = CONVERT(CHAR,STAMP,108)
END