在同一台服务器上有,dataA和dataB两个数据库,两个都有一张结构一样的表tableInfo。平时数据操作是对dataA的tableInfo进行操作。然后dataB的tableInfo数据由dataA表的数据中取最新的20条。每天定时会更新只取并保留20条数据。
这个是不是用触发器就可以实现?
具体要怎么写?我网上自己查了资料,一时半活理不清,被催着完成任务···
望大侠们赐教····

解决方案 »

  1.   

    如果是定时完成的话,可以使用作业。========================================
    http://www.dbtuning.cn
    主营:中小企业数据库管理、优化、调校服务
    ========================================
      

  2.   

    Use DataA
    Insert DataB..tableInfo Select Top 20 * From Tableinfo Order by [字段]
      

  3.   

    不是很懂··其实也不用定时,只是说,dataB中的表不需要dataA中表的所有数据,只要最新的20条,我在想:如果dataA每进行一次数据插入,然后我触发一个动作,在dataB中tableInfo表中新插入一条数据,然后删除最后一条数据。也可以实现。。关键是我sql动态代码不是很懂,不会写···
    高手,请详细点啊···
      

  4.   

    delete DataB..tableInfo
    Insert DataB..tableInfo Select Top 20 * From Tableinfo Order by [字段]
      

  5.   

    定时作业的制定 企业管理器 
    --管理 
    --SQL Server代理 
    --右键作业 
    --新建作业 
    --"常规"项中输入作业名称 
    --"步骤"项 
    --新建 
    --"步骤名"中输入步骤名 
    --"类型"中选择"Transact-SQL 脚本(TSQL)" 
    --"数据库"选择执行命令的数据库 
    --"命令"中输入要执行的语句: 
                          EXEC 存储过程名 ... --该存储过程用于创建表 --确定 
    --"调度"项 
    --新建调度 
    --"名称"中输入调度名称 
    --"调度类型"中选择你的作业执行安排 
    --如果选择"反复出现" 
    --点"更改"来设置你的时间安排  
    然后将SQL Agent服务启动,并设置为自动启动,否则你的作业不会被执行 设置方法: 
    我的电脑--控制面板--管理工具--服务--右键 SQLSERVERAGENT--属性--启动类型--选择"自动启动"--确定. 
      

  6.   

    delete DataB..tableInfo
    use DataA
    Insert DataB..tableInfo Select Top 20 * From Tableinfo Order by [字段]
      

  7.   

    定时作业的制定 企业管理器 
    --管理 
    --SQL Server代理 
    --右键作业 
    --新建作业 
    --"常规"项中输入作业名称 
    --"步骤"项 
    --新建 
    --"步骤名"中输入步骤名 
    --"类型"中选择"Transact-SQL 脚本(TSQL)" 
    --"数据库"选择执行命令的数据库 DataA
    --"命令"中输入要执行的语句: delete DataB..tableInfo 
    use DataA 
    Insert DataB..tableInfo Select Top 20 * From Tableinfo Order by [字段]
    --确定 
    --"调度"项 
    --新建调度 
    --"名称"中输入调度名称 
    --"调度类型"中选择你的作业执行安排 
    --如果选择"反复出现" 
    --点"更改"来设置你的时间安排  
    然后将SQL Agent服务启动,并设置为自动启动,否则你的作业不会被执行 设置方法: 
    我的电脑--控制面板--管理工具--服务--右键 SQLSERVERAGENT--属性--启动类型--选择"自动启动"--确定. 
      

  8.   

    用定时作业完成,方法在上面已经有介绍.语句使用:1.
    delete from dataB..tableInfo
    2.
    insert into dataB..tableInfo select top 20 * from dataA..tableInfo order by 时间字段 desc