SQLServer 触发器 数据库进行数据备份_MsSql

复制代码 代码如下:

  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

时间: 2024-09-27 20:30:45

SQLServer 触发器 数据库进行数据备份_MsSql的相关文章

SQLServer 触发器 数据库进行数据备份

复制代码 代码如下: 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)); 第二步,编写备份用的触发器,只有更新或者是插入的时候才触发 复

SQL 通过触发器实现delete数据备份

SQL SERVER 通过触发器实现delete数据备份,触发器脚本如下: SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TRIGGER [dbo].[tgr_a_user_delete] ON [dbo].[A_User] for delete AS BEGIN if (object_id('A_UserBak', 'U') is not null) begin --存在A_UserBak,直接插入数据 insert into

MySQL数据库的数据备份和恢复详解

本文讨论 MySQL 的备份和恢复机制,以及如何维护数据表,包括最主要的两种表类型:MyISAM 和 Innodb,文中设计的 MySQL 版本为 5.0.22. 目前 MySQL 支持的免费备份工具有:mysqldump.mysqlhotcopy,还可以用 SQL 语法进行备份:BACKUP TABLE 或者 SELECT INTO OUTFILE,又或者备份二进制日志(binlog),还可以是直接拷贝数据文件和相关的配置文件.MyISAM 表是保存成文件的形式,因此相对比较容易备份,上面提到

跨数据库实现数据交流_MsSql

通常情况下,我们的CRUD操作都在单一数据库中进行.但是,也可能会遇到需要进行跨数据交流的情况.对此,我以跨数据库进行表的访问为例,稍微总结了下. 一.同SQL SERVER 这个最简单.直接在表名前加上"[数据库名]."就可以了. 例: SELECT * FROM [DestinationDBName].dbo.DestinationTableName 二.跨SQL SERVER  主要介绍两种方法: (一)通过链接服务器 1.先执行系统存储过程 sp_addlinkedserver

mysql触发器数据库同步数据方法

mysql教程触发器数据库教程同步数据方法 <script language="网页特效"> function res(){ document.getElementById("tab2").value = "pre_"+document.getElementById("tab1").value; } </script> </head> <body> <form action

教你几种在SQLServer中删除重复数据方法_MsSql

方法一 复制代码 代码如下: declare @max integer,@id integer declare cur_rows cursor local for select 主字段,count(*) from 表名 group by 主字段 having count(*) > 1 open cur_rows fetch cur_rows into @id,@max while @@fetch_status=0 begin select @max = @max -1 set rowcount

sqlserver 查询数据库大小的方法_MsSql

但Insus.NET想到的是,从下面的SQL语句,就可以查询到数据库大小.因此分享于此. 复制代码 代码如下: SELECT DB_NAME(database_id) AS [Database Name],[Name] AS [Logical Name],[Physical_Name] AS [Physical Name],((size * 8) / 1024) AS [Size(MB)],[differential_base_time] AS [Differential Base Time]

数据库Oracle数据的异地的自动备份_oracle

正在看的ORACLE教程是:数据库Oracle数据的异地的自动备份.在大型商业应用中,数据的异地容灾备份十分重要,也必不可少.笔者根据自己的实践经验,设计了一套简洁地实现异地数据自动备份的方法,可供数据库管理人员参考.文中所有的程序都经过测试,运行良好.这里模拟的异地运行环境为一主一备两套Sun Solaris系统,所采用的备份方法为Oracle数据库提供的标准备份:export. 相关命令 文中主要用到三个命令,这里先单独介绍一下: export: 将数据库中数据备份成一个二进制系统文件,它有

备份宝或将成为小微企业数据备份首选

  在我国经济体制改革不断完善的进程中,小微企业的发展越来越受到政府和社会的广泛关注.据统计数据表明,目前我国小微企业数量逼近5000万关口,在解决大量就业人口的同时,国家征收的所得税中,小微企业占比高达近三分之二,已然成为国民经济的重要支柱.然而,与信息化成熟完善的大企业相比,小微企业的信息化进程却是举步维艰. 在激烈的市场竞争中,缺乏信息化的支持常常使小微企业处于下风.俗话说"商场如战场",谁能掌握市场的第一手信息谁就能抢先一步"排兵布阵",兵书有云"