Modyfikowanie schematu partycji
Dotyczy:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Schemat partycji można zmodyfikować w programie SQL Server, usłudze Azure SQL Database i usłudze Azure SQL Managed Instance, projektując grupę plików w celu przechowywania następnej partycji dodawanej do tabeli partycjonowanej przy użyciu programu SQL Server Management Studio (SSMS) lub Transact-SQL. W tym celu należy przypisać właściwość NEXT USED do grupy plików.
Właściwość NEXT USED można przypisać do pustej grupy plików lub do tej, która już zawiera partycję. Innymi słowy, grupa plików może przechowywać więcej niż jedną partycję. Dowiedz się więcej o grupach plików i strategiach partycjonowania w Filegroups.
Partycjonowanie tabel jest również dostępne w dedykowanych pulach SQL w usłudze Azure Synapse Analytics z pewnymi różnicami składniowymi. Więcej informacji znajdziesz w Partycjonowanie tabel w dedykowanej puli SQL.
Ograniczenia
Każda grupa plików, której dotyczy alteracja schematu partycji, musi być online.
Notatka
Usługa Azure SQL Database obsługuje tylko grupę plików PRIMARY
.
Uprawnienia
Do wykonania schematu ALTER PARTITION można użyć następujących uprawnień:
ZMIENIANIE UPRAWNIEŃ DO PRZESTRZENI DANYCH To uprawnienie domyślnie dotyczy członków stałej roli serwera sysadmin oraz stałych ról bazy danych db_owner i db_ddladmin.
UPRAWNIENIE CONTROL lub ALTER w bazie danych, w której utworzono schemat partycji.
CONTROL SERVER lub ALTER ANY DATABASE uprawnienia na serwerze bazy danych, w której utworzono schemat partycji.
Modyfikowanie schematu partycji przy użyciu Transact-SQL
W tym przykładzie użyto przykładowej bazy danych AdventureWorks.
W Eksploratorze obiektów nawiąż połączenie z wystąpieniem silnika bazy danych.
Na pasku Standardowa wybierz pozycję Nowe zapytanie.
Skopiuj poniższy przykład i wklej go w oknie zapytania, a następnie wybierz pozycję Wykonaj.
Notatka
Dla uproszczenia ten kod tworzy nowe grupy plików, ale nie przypisuje do nich plików. Umożliwia to pokazanie sposobu modyfikowania schematu partycji, ale nie jest kompletnym przykładem konfigurowania obiektu partycjonowanego. Znajdź przykłady tworzenia partycjonowanych tabel i indeksów w Tworzenie tabel i indeksów partycjonowanych.
USE AdventureWorks2022; GO -- add five new filegroups to the AdventureWorks2022 database ALTER DATABASE AdventureWorks2022 ADD FILEGROUP test1fg; GO ALTER DATABASE AdventureWorks2022 ADD FILEGROUP test2fg; GO ALTER DATABASE AdventureWorks2022 ADD FILEGROUP test3fg; GO ALTER DATABASE AdventureWorks2022 ADD FILEGROUP test4fg; GO ALTER DATABASE AdventureWorks2022 ADD FILEGROUP test5fg; GO -- if the "myRangePF1" partition function and the "myRangePS1" partition scheme exist, -- drop them from the AdventureWorks2022 database IF EXISTS (SELECT * FROM sys.partition_functions WHERE name = 'myRangePF1') DROP PARTITION FUNCTION myRangePF1; GO IF EXISTS (SELECT * FROM sys.partition_schemes WHERE name = 'myRangePS1') DROP PARTITION SCHEME myRangePS1; GO -- create the new partition function "myRangePF1" with four partition groups CREATE PARTITION FUNCTION myRangePF1 (int) AS RANGE LEFT FOR VALUES ( 1, 100, 1000 ); GO -- create the new partition scheme "myRangePS1"that will use -- the "myRangePF1" partition function with five file groups. -- The last filegroup, "test5fg," will be kept empty but marked -- as the next used filegroup in the partition scheme. CREATE PARTITION SCHEME myRangePS1 AS PARTITION myRangePF1 TO (test1fg, test2fg, test3fg, test4fg, test5fg); GO --Split "myRangePS1" between boundary_values 100 and 1000 --to create two partitions between boundary_values 100 and 500 --and between boundary_values 500 and 1000. ALTER PARTITION FUNCTION myRangePF1 () SPLIT RANGE (500); GO -- Allow the "myRangePS1" partition scheme to use the filegroup "test5fg" -- for the partition with boundary_values of 100 and 500 ALTER PARTITION SCHEME myRangePS1 NEXT USED test5fg; GO
Usuwanie schematu partycji za pomocą programu SSMS
W eksploratorze obiektów połącz się z docelową bazą danych.
Wybierz znak plus, aby rozwinąć bazę danych, w której chcesz usunąć schemat partycji.
Wybierz znak plus, aby rozwinąć folder Storage.
Wybierz znak plus, aby rozwinąć folder schematów partycji.
Kliknij prawym przyciskiem myszy schemat partycji, który chcesz usunąć, a następnie wybierz pozycję Usuń.
W oknie dialogowym Usuń obiekt upewnij się, że wybrano prawidłowy schemat partycji, a następnie wybierz pozycję OK.
Następne kroki
Dowiedz się więcej o partycjonowaniu tabel w następujących artykułach: