SQLServer进行表归档

SQLServer表归档一般用存储过程实现:

USE [DB]

GO


SET ANSI_NULLS ON

GO

SET QUOTED_IDENTIFIER ON

GO


CREATE Proc [dbo].[Proc_BackupSysDataLog]

as


INSERT INTO [DB].[dbo].[SysDataLog_H]

           ([SysNo]

      ,[OptTime]

      ,[OptUserID]

      ,[OptIP] )

  SELECT top 300000 [SysNo]

      ,[OptTime]

      ,[OptUserID]

      ,[OptIP]

  FROM [dbo].[SysDataLog] where [OptTime]

  and not EXISTS (SELECT 1 FROM DB..SysDataLog_H a WHERE a.SysNo=SysDataLog.SysNo)


   

  DELETE TOP(300000)   

  from [SysDataLog]

  WHERE  [OptTime]

 a WHERE a.SysNo=SysDataLog.SysNo)


然后在SQLServer的作业里面建一个作业计划,定时执行这个存储过程就可以。



请使用浏览器的分享功能分享到微信等