實(shí)現(xiàn)SQL Server數(shù)據(jù)備份可用觸發(fā)器
以下的文章主要向大家講述的是正確使用觸發(fā)器來實(shí)現(xiàn)SQL Server數(shù)據(jù)備份,如果你對觸發(fā)器來實(shí)現(xiàn)SQL Server數(shù)據(jù)備份技術(shù)心存好奇的話,以下的文章將會揭開它的神秘面紗,望你能有所收獲。
用觸發(fā)器對SQL Server進(jìn)行數(shù)據(jù)備份:
1、建立測試數(shù)據(jù)表:
一個用于插入數(shù)據(jù),test3 另一個作為備份,
- test3_bak create table test3(id int primary key not null identity(1,1),uname varchar(20),uage int);
- create table test3_bak(id int primary key not null identity(1,1),bid int,uname varchar(20), uage int,active char(1));
2、編寫備份用的觸發(fā)器,只有更新或者是插入的時(shí)候才觸發(fā)
- alter trigger test3_bak_insert_update on test3 for insert,update as declare
- @id int declare @uname varchar(20) declare @uage int begin select
- @idid=id,@unameuname=uname,@uageuage=uage from inserted if
- @id<>0 begin update test3_bak set active='0' where bid=
- @id insert into test3_bak(bid,uname,uage,active) values(@id,@uname,@uage,'1') end end
3、測試數(shù)據(jù):
- insert into test3(uname,uage) values('FLB',20) insert into test3(uname,uage)
- values('FLB1',21) insert into test3(uname,uage) values('FLB2',22) update
- test3 set uage=100 where id=27 delete from test3 where id=20
4、可自己采用下面的查詢蹤兩個表的數(shù)據(jù)變化
- select * from test3 select * from test3_bak
上述的相關(guān)內(nèi)容就是對用觸發(fā)器實(shí)現(xiàn)SQL Server進(jìn)行數(shù)據(jù)備份的描述,希望會給你帶來一些幫助在此方面。
以上的相關(guān)內(nèi)容就是對用觸發(fā)器實(shí)現(xiàn)SQL Server數(shù)據(jù)備份的介紹,望你能有所收獲。
【編輯推薦】