
本文共 3090 字,大约阅读时间需要 10 分钟。
SqlServer ������������������������������������������������������������������
������������
������������SqlServer 2008R2������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
������������
������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
���������������������
��� ���Applogs���������������������������������������
��� ���Applogs������������������������������ ��������������������������������������������������������������������������������� ��������������������������������������������������������������������������� ���������������������������������������������������������������������
USE [Applogs]GO SET ANSI_NULLS OFF SET QUOTED_IDENTIFIER ON CREATE PROCEDURE [dbo].[oldLog] AS BEGIN SET NOCOUNT ON; SET ANSI_PADDING ON; Declare @date VARCHAR(100) = CONVERT(VARCHAR(100), GETDATE(), 112); Declare @TableDay VARCHAR(100) = 'dbLog_' + @date; Declare @PK VARCHAR(50) = 'PK_dbLog_' + @date; Declare @sql_create VARCHAR(8000) = 'CREATE TABLE [dbo].[' + @TableDay + '] ( [LogId] [bigint] IDENTITY(1,1) NOT NULL, [PartnerId] [varchar](50) NULL, [OrderId] [bigint] NULL, [PartnerOrderStatus] [nvarchar](50) NULL, [RequestUrl] [nvarchar](200) NULL, [RequestData] [nvarchar](max) NULL, [ResponseData] [nvarchar](max) NULL, [CreateAt] [datetime] NULL, [busType] [nvarchar](20) NULL ) CONSTRAINT [' + @PK + '] PRIMARY KEY CLUSTERED ( [LogId] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]'; EXEC (@sql_create); Declare @sql_inset VARCHAR(8000) = 'Declare @date date; SET @date = CAST(GETDATE() AS DATE); SET IDENTITY_INSERT [dbo].[' + @TableDay + '] ON; INSERT INTO [dbo].[' + @TableDay + '] ( [LogId], [PartnerId], [OrderId], [PartnerOrderStatus], [RequestUrl], [RequestData], [ResponseData], [CreateAt], [busType] ) SELECT [LogId], [PartnerId], [OrderId], [PartnerOrderStatus], [RequestUrl], [RequestData], [ResponseData], [CreateAt], [busType] FROM [dba].[dbo].[RequestLog] WITH (NOLOCK) WHERE CreateAt <= DATEADD(MONTH, -3, @date); SET IDENTITY_INSERT [dbo].[' + @TableDay + '] OFF'; EXEC (@sql_inset); Declare @sql_delete VARCHAR(8000) = 'Declare @date date; SET @date = CAST(GETDATE() AS DATE); dellete [dba].[dbo].[RequestLog] WHERE CreateAt <= DATEADD(MONTH, -3, @date) AND CreateAt <= @date'; EXEC (@sql_delete); END
������������������������������������������������������������������������������������������������������������������������������Sql Agent���������������������������������������������
发表评论
最新留言
关于作者
