After Trigger in SQL is fired before update the column in the table.
Understand with Example
The Tutorial illustrate an example from 'Create After Update Trigger in SQL'. In order to understand this example, we create a table Stu_Table and Stu_Log. To create these tables we use create table statement that construct table Stu_Table and Stu_Log with specific field name and data type respectively.
Create Table Stu_Table
Create Table Stu_Table( Stu_Id int, Stu_Name varchar(15),Stu_Class int); |
Create Table Stu_Log
create table stu_log( user_id VARCHAR(15), description VARCHAR(100)); |
Create Trigger Stu_Update
The below Query create a Trigger 'stu_update' on table stu_table.
delimiter $$ CREATE TRIGGER stu_update AFTER UPDATE ON stu_table FOR EACH ROW
BEGIN
INSERT into stu_log(user_id, description)
VALUES (user(), CONCAT('Update Student Record
(',old.stu_id,' ',old.stu_name,' ',old.stu_class,
') to (',new.stu_id,' ',new.stu_name,' ',new.stu_class,')'));
END$$
delimiter ;
|
Insert Data Into Stu_Table
insert into stu_table values(1, 'Komal',10); insert into stu_table values(2, 'Ajay',10); insert into stu_table values(3, 'Santosh',10); insert into stu_table values(4, 'Rakesh',10); insert into stu_table values(5, 'Bhau',10); |
Stu_Table
+--------+----------+-----------+ | Stu_Id | Stu_Name | Stu_Class | +--------+----------+-----------+ | 1 | Komal | 10 | | 2 | Ajay | 10 | | 3 | Santosh | 10 | | 4 | Rakesh | 10 | | 5 | Bhau | 10 | +--------+----------+-----------+ |
Update Stu_Table
update stu_table set Stu_Class = stu_class+1; |
Stu_Table
+--------+----------+-----------+ | Stu_Id | Stu_Name | Stu_Class | +--------+----------+-----------+ | 1 | Komal | 11 | | 2 | Ajay | 11 | | 3 | Santosh | 11 | | 4 | Rakesh | 11 | | 5 | Bhau | 11 | +--------+----------+-----------+ |
Stu_Log
+----------------+--------------------------------------------------------+ | user_id | description | +----------------+--------------------------------------------------------+ | root@localhost | Update Student Record (1 Komal 11) to (1 Komal 12) | | root@localhost | Update Student Record (2 Ajay 11) to (2 Ajay 12) | | root@localhost | Update Student Record (3 Santosh 11) to (3 Santosh 12) | | root@localhost | Update Student Record (4 Rakesh 11) to (4 Rakesh 12) | | root@localhost | Update Student Record (5 Bhau 11) to (5 Bhau 12) | +----------------+--------------------------------------------------------+
If you are facing any programming issue, such as compilation errors or not able to find the code you are looking for.
Ask your questions, our development team will try to give answers to your questions.
Ask Questions? Discuss: Create After Update Trigger in SQL View All Comments
Post your Comment