/*a trigger can be created in order to perform any action upon a DDL statement.
The scope can be database level or Server level. DDL triggers are used when you want
a certain action to be performed when a schema change occurs*/
create table userdata(username varchar(50),Operations varchar(30),dateandtime datetime)
create trigger empinsert on emp
for insert
as
insert into userdata values(suser_sname(),'Inserted',getdate())
select * from Emp
select * from UserData
insert into Emp values('DHEERAJ',16000,20)
--drop trigger <triggername>
alter trigger empinsertafter on emp
after insert
as
insert into userdata values(suser_sname(),'After Inserted',getDate())
insert into emp values('MAHADEV',8000,20)
select * from emp
select * from userdata
create trigger updateemp on emp
for Update
as
insert into UserData values(suser_sname(),'Updated',getDate())
update emp set esalary='5000' where empno='100'
select * from emp
select * from userdata
create trigger updateafter on emp
after update
as
insert into userdata values(suser_sname(),'After Updated',getdate())
update emp set ename='SHANKARP' where empno='100'
select * from userdata
select * from emp
create trigger deleteemp on emp
for delete
as
insert into userdata values(suser_sname(),'Deleted',getdate())
delete emp where empno=111
select * from userdata
create trigger deleteafter on emp
after delete
as
insert into userdata values(suser_sname(),'After deleted',getdate())
delete emp where empno=109
select * from userdata
create trigger insteadofemp on emp
instead of Insert
as
insert into UserData values(suser_sname(),'Instead of Insert',getDate())
print 'Inserted data was not saved in the table';
insert into emp values('MAHESHWAR',15000,30)
select * from emp
select * from userdata
create trigger insteadofdel on emp
instead of delete
as
insert into userdata values(suser_sname(),'Instead of delete',getdate())
delete emp where empno=108
select * from emp
select * from userdata
alter trigger insteadofupdate on emp
instead of update
as
insert into userdata values(suser_sname(),'Instead of updated',getdate())
print 'it was not updated'
update emp set esalary=8000 where ename='SHANKARP'
select * from emp
select * from userdata
No comments:
Post a Comment