下載吧 - 綠色安全的游戲和軟件下載中心

          軟件下載吧

          當前位置:軟件下載吧 > 數據庫 > MS_SQL > SQL開發知識:SQL Server實現自動循環歸檔分區數據腳本

          SQL開發知識:SQL Server實現自動循環歸檔分區數據腳本

          時間:2024-03-11 15:08作者:下載吧人氣:35

          概述

          大家應該都知道在很多業務場景下我們需要對一些記錄量比較大的表進行分區,同時為了保證性能需要將一些舊的數據進行歸檔。在分區表很多的情況下如果每一次歸檔都需要人工干預的話工程量是比較大的而且也容易發生紕漏。接下來分享一個自己編寫的自動歸檔分區數據的腳本,原理是分區表和歸檔表使用相同的分區方案,循環利用當前的文件組,話不多說了,來一起看看詳細的介紹吧。

          一、創建測試數據

          —-01創建文件組
          USE [master]
          GO
          ALTER DATABASE [chenmh] ADD FILEGROUP [Group1]
          GO
          ALTER DATABASE [chenmh] ADD FILEGROUP [Group2]
          GO
          ALTER DATABASE [chenmh] ADD FILEGROUP [Group3]
          GO
          ALTER DATABASE [chenmh] ADD FILEGROUP [Group4]
          GO
          USE [master]
          GO
          ALTER DATABASE [chenmh] ADD FILE ( NAME = N’datafile1′, FILENAME = N’C:Program FilesMicrosoft SQL ServerMSSQL12.MSSQLSERVERMSSQLDATAdatafile1.ndf’ , SIZE = 8192KB , FILEGROWTH = 65536KB ) TO FILEGROUP [Group1]
          GO
          ALTER DATABASE [chenmh] ADD FILE ( NAME = N’datafile2′, FILENAME = N’C:Program FilesMicrosoft SQL ServerMSSQL12.MSSQLSERVERMSSQLDATAdatafile2.ndf’ , SIZE = 8192KB , FILEGROWTH = 65536KB ) TO FILEGROUP [Group2]
          GO
          ALTER DATABASE [chenmh] ADD FILE ( NAME = N’datafile3′, FILENAME = N’C:Program FilesMicrosoft SQL ServerMSSQL12.MSSQLSERVERMSSQLDATAdatafile3.ndf’ , SIZE = 8192KB , FILEGROWTH = 65536KB ) TO FILEGROUP [Group3]
          GO
          ALTER DATABASE [chenmh] ADD FILE ( NAME = N’datafile4′, FILENAME = N’C:Program FilesMicrosoft SQL ServerMSSQL12.MSSQLSERVERMSSQLDATAdatafile4.ndf’ , SIZE = 8192KB , FILEGROWTH = 65536KB ) TO FILEGROUP [Group4]
          GO

          —-02創建分區函數
          USE [chenmh]
          GO
          CREATE PARTITION FUNCTION [Pt_Range](BIGINT) AS RANGE RIGHT FOR VALUES (1000000, 2000000, 3000000)
          GO

          —-03創建分區方案,分區方案對應的文件組數是分區函數指定的數量+1
          CREATE PARTITION SCHEME Ps_Range
          AS PARTITION Pt_Range
          TO (Group1, Group2, Group3, Group4);

          —04創建表,指定的分區列的數據類型一定要和分區函數指定的列類型一致。
          CREATE TABLE [dbo].[News](
          [id] [bigint] NOT NULL,
          [status] [int] NULL,
          CONSTRAINT [PK_News] PRIMARY KEY CLUSTERED
          (
          [id] ASC
          )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [Ps_Range](id)
          ) ON [Ps_Range](id)

          —–創建歸檔分區表
          CREATE TABLE [dbo].[NewsArchived](
          [id] [bigint] NOT NULL,
          [status] [int] NULL,
          CONSTRAINT [PK_NewsArchived] PRIMARY KEY CLUSTERED
          (
          [id] ASC
          )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [Ps_Range](id)
          ) ON [Ps_Range](id)

          —-插入測試數據
          DECLARE @id INT
          SET @id=1
          WHILE @id<5001000
          BEGIN
          INSERT INTO News VALUES(@id,@id%2)
          SET @id=@id+1

          END

          標簽MSSQL,SQLServer,技術文檔,數據庫,SQLSERVER

          相關下載

          查看所有評論+

          網友評論

          網友
          您的評論需要經過審核才能顯示

          熱門閱覽

          最新排行

          公眾號

          主站蜘蛛池模板: 国产一区二区三区不卡在线观看 | 果冻传媒董小宛一区二区| 精品一区二区三区在线播放| 精品国产日产一区二区三区 | 日韩av片无码一区二区三区不卡 | 国产一区二区在线|播放| 99久久精品国产免看国产一区 | 另类一区二区三区| 精品国产区一区二区三区在线观看| 国产美女口爆吞精一区二区| 在线精品一区二区三区电影| 乱子伦一区二区三区| 国产福利电影一区二区三区久久老子无码午夜伦不 | 国产精品亚洲综合一区| 人妻无码第一区二区三区| 久久精品国产第一区二区| 亚洲AV无码一区二区三区电影| 精品伦精品一区二区三区视频| 国产激情一区二区三区小说| 91无码人妻精品一区二区三区L| 内射女校花一区二区三区| 免费无码一区二区| 香蕉久久ac一区二区三区| 人妻无码一区二区三区免费| 无码人妻一区二区三区在线| 制服中文字幕一区二区| 国产亚洲一区区二区在线| 视频一区二区中文字幕| 一区国严二区亚洲三区| 国产一区二区影院| 日韩一区二区三区视频| 国产一区二区三区小向美奈子 | 一区二区三区国模大胆| 一区二区在线视频免费观看| 精品在线视频一区| 亚洲男人的天堂一区二区| 日韩国产一区二区| 视频一区二区精品的福利| 亚州国产AV一区二区三区伊在| 日韩动漫av在线播放一区| 久久精品人妻一区二区三区|