zoukankan      html  css  js  c++  java
  • SQL server 使用触发器跨数据库备份数据

    create database TriggerTest
    
    create table transInfo2 --交易信息表
    (
       cardID     varchar(10) not null,  --卡号
       transType  char(4)     not null,  --交易类型(存入/支取)
       transMoney money       not null,  --交易金额
       transDate  datetime    not null   --交易日期
    )
    go
    
    create database TriggerDatabase
    use TriggerDatabase
    go
    
    create table transInfo --交易信息表
    (
       cardID     varchar(10) not null,  --卡号
       transType  char(4)     not null,  --交易类型(存入/支取)
       transMoney money       not null,  --交易金额
       transDate  datetime    not null   --交易日期
    )
    go
    
    --------------- 添加测试数据 ---------------
    insert into transInfo(cardID,transType,transMoney)
            values('10000','支取',200);
    
    --------------- 查看结果 ---------------
    select * from transInfo;
    go
    
    /* 实现: 当删除TriggerDatabase数据库transInfo表中的数据时,
             自动备份被清除的数据到TriggerTest数据库中的transInfo2表中
    */
    ------------------ delete 触发器 ------------------
    use TriggerDatabase
    go
    
    if exists (select * from sysobjects 
               where name='trig_delete_transInfo')
    drop trigger trig_delete_transInfo
    go
    
    create trigger trig_delete_transInfo
    on transInfo after delete  --  for | after
    as
       -- 如果数据库中,不存在 backupTable 表
       if not exists(select * from sysobjects 
                      where name='TriggerTest.dbo.transInfo2')
          insert into TriggerTest.dbo.transInfo2 select * from deleted --deleted临时表
       else
          insert into TriggerTest.dbo.transInfo2 select * from deleted
    go
    
    ------------------ 测试触发器 ------------------
    set nocount on
    
    delete from transInfo where cardid='10000'; --测试
    
    --查看结果
    use TriggerTest
    go
    select * from transInfo2

    此方法目前只适用于在同一台的服务器上的两个数据库的情况下使用

  • 相关阅读:
    HDU1005 Number Sequence 题解 矩阵快速幂
    HDU1003 Max Sum 题解 动态规划 最大字段和扩展
    HDU1002 A + B Problem II 题解 高精度加法
    python练习题之访问限制
    python练习之析构函数
    python练习题之 猫2
    python 练习题之 猫
    练习题之交换牌
    mongodb 安装教程
    pymongo.errors.ServerSelectionTimeoutError: localhost:27017: [Errno 111] Connection refused
  • 原文地址:https://www.cnblogs.com/xuxw/p/3435194.html
Copyright © 2011-2022 走看看