使用 SSMS 进行 SQL 表分区

本节将向您展示如何使用 SSMS 或 SQL Server Management Studio 创建表分区。在本演示中,我们将使用下表。此表是从 Adventure Works DW 数据库创建的。您可以使用下面的查询获取相同的数据。

USE [AdventureWorksDW2014]
GO
SELECT CUST.[FirstName]
,CUST.[LastName]
,CUST.[EnglishEducation] AS Education
,CUST.[EnglishOccupation] AS Occupation
,CUST.[YearlyIncome] AS Income
,GEO.[City]
,GEO.[StateProvinceName] AS State
,GEO.[EnglishCountryRegionName] AS Country
,GEO.[PostalCode]
,FACT.[OrderQuantity]
,FACT.[TotalProductCost] AS TotalCost
,FACT.[SalesAmount]
,FACT.[TaxAmt]
,FACT.OrderDate
FROM [DimGeography] AS GEO
INNER JOIN [DimCustomer] AS CUST
ON GEO.[GeographyKey] = CUST.[GeographyKey]
INNER JOIN [FactInternetSales] AS FACT
ON CUST.CustomerKey = FACT.CustomerKey

使用 SSMS 进行 SQL 表分区

要在SSMS中创建表分区,请导航到要创建分区的表。然后,右键单击它,选择“存储”,然后在上下文菜单中选择“创建分区”选项。

Create Partition Option in Object Explorer 2

选择“创建分区”选项将打开一个向导。第一页是欢迎页面。

SQL Table Partitioning using SSMS 3

选择分区列

在此页面上,您需要选择要用作分区列的列。在此示例中,我们使用的是“订单日期”列。

Select Partitioning Column in the Wizard

使用 SSMS 进行 SQL 表分区 – 选择分区函数

使用此页面选择现有分区函数或创建新分区函数。我将通过分配一个名为“Monthly Sales Function”的名称来创建一个新的。

SQL Table Partitioning using SSMS 5

选择分区方案

在此页面上,您可以选择现有的分区方案或创建一个新的。如果为新函数创建方案,则现有的分区方案选择将变为灰色。我将通过分配一个名为“Monthly Sales Scheme”的名称来创建一个新的。

Table Partitioning using SSMS 6

让我向您展示如果您选择现有的分区函数“Monthly partition”会发生什么。此分区是之前使用查询创建的。

现在您可以看到它允许您选择现有方案。或者您可以创建一个新的方案。

Choose Existing Partition Scheme

让我撤销这两个步骤,然后选择“新函数”和“新方案”。

使用 SSMS 进行 SQL 表分区 – 映射分区

您可以使用左边界或右边界。

Table Map Partition

使用下拉框选择月份名称。请使用“设置边界”按钮选择开始日期和结束日期,并使用“估算存储”来估算所需的磁盘空间。

Map Partitions Right Boundary option

别忘了选择 PRIMARY 文件组(默认的)。否则,它会报错。

Map your partitions with Range Boundaries

表分区 – 选择输出选项

您可以

  • 创建脚本并在以后运行。
  • 立即运行 - 这将立即运行此表分区脚本
  • 计划:您可以使用此脚本来运行。

选择“立即运行”选项。

单击“完成”按钮以创建分区。

Table Partitioning Wizard Review Summary

我们已通过向导成功创建了表分区。