Assuming you have a table named "YourTable" with a column named "ModifiedDate" that you want to update whenever a row is modified:
1. Create the trigger:
CREATE TRIGGER tr_UpdateModifiedDate
ON YourTable
AFTER UPDATE
AS
BEGIN
SET NOCOUNT ON;
UPDATE YourTable
SET ModifiedDate = GETDATE()
FROM YourTable
INNER JOIN inserted ON YourTable.PrimaryKeyColumn = inserted.PrimaryKeyColumn;
END;
```
Replace "YourTable" with the actual name of your table and "PrimaryKeyColumn" with the primary key column of your table.
2. Explanation:
- The `AFTER UPDATE` clause specifies that the trigger will fire after an update operation is performed on the table.
- The `inserted` table is a special table available inside triggers that contains the updated rows during an update operation.
- The `INNER JOIN inserted` is used to match the rows in the "YourTable" with the updated rows from the "inserted" table based on the primary key column.
- `ModifiedDate = GETDATE()` will update the "ModifiedDate" column to the current date and time (using `GETDATE()`) for the rows that were changed.
With this trigger in place, whenever a row is updated in "YourTable," the "ModifiedDate" column for that specific row will be automatically updated to the current date and time.
No comments:
Post a Comment