简体版  |  繁体版   推荐信息: 阅读排行 | 滚动 | 微软SOA高峰会 | 中型企业创新社区 | 随心所欲发新闻
企业软件

触发器对SQL Server数据库进行备份

出处:网页教学网 作者:网页教学网 2008-02-26 18:15 评论
字体大小: | |
如何用触发器对SQL Server数据库进行数据备份?

  问:如何用触发器对SQL Server数据库进行数据备份?

  答:首先,你需要建立测试数据表,一个用于插入数据: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));

  第二步,编写备份用的触发器,只有更新或者是插入的时候才触发

  以下是引用片段:

  alter trigger test3_bak_insert_update

  on test3

  for insert,update

  as

  declare @id int

  declare @uname varchar(20)

  declare @uage int

  begin

  select @id=id,@uname=uname,@uage=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

  第三步,测试数据:

  下面是引用的片段:

  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

  最后,你可自己采用下面的查询踪两个表的数据变化:

  以下是引用片段:

  select * from test3

  select * from test3_bak

  • 本文关键字:
  • 应用(2162)
  • 网友关注
    热门产品
    编辑推荐
    推荐专题
    更多
    思科
  • 打开网络创新之门
  • 思科公司于北京嘉里中心饭店成功举办了主题为“创新网络,绿色引擎”的思科创新日暨思科新品发布会。
  • 论坛热贴
    更多
    博客精选
    更多
    视频推荐
    更多
  • 杜青松:对IT人员要求别具一格
  • 在对杜青松的采访中,他透露出目前在中粮包装有限公司信息化建设的工作中的一个难点——IT人力资源短缺。
  • TMG

    Copyright (C) 1999-2008 Chinabyte.com, All Rights Reserved 版权所有 天极网络

    渝ICP证B2-20030003号 商务联系、网站内容、合作建议:010-82657868

    版权声明 在线提交意见反馈 Powered by 天极内容管理平台CMS4i

    经营性网站备案信息 网警备案 中国网站排名