Udostępnij za pośrednictwem


Tworzenie PARTYCJI SCHEMATU (Transact-SQL)

Tworzy schemat z bieżącej bazy danych, który mapuje partycji tabela partycjonowana lub indeksie aplikacjami.Liczba i domena partycji tabela partycjonowana lub indeksu są określane w partycji funkcja.Należy najpierw utworzyć partycję funkcja w Funkcji tworzenia PARTYCJI instrukcja przed utworzeniem schemat partycji.

Ikona łącza do tematuJęzyka Transact-SQL składni konwencje

Składnia

CREATE PARTITION SCHEME partition_scheme_name
AS PARTITION partition_function_name
[ ALL ] TO ( { file_group_name | [ PRIMARY ] } [ ,...n ] )
[ ; ]

Argumenty

  • partition_scheme_name
    Jest to nazwa schemat partycji.Nazwy partycji schematu musi być unikatowa w obrębie bazy danych i są zgodne z zasadami identyfikatorów.

  • partition_function_name
    Nazwa partycji funkcja używa schemat partycji.Utworzone za pomocą funkcja partycji partycje są mapowane na aplikacjami określone w schemat partycji.partition_function_namemusi istnieć w bazie danych.Jedna partycja nie może zawierać aplikacjami FILESTREAM i innych niż FILESTREAM.

  • ALL
    Określa, że wszystkie partycje mapować grupa plików w file_group_name, lub podstawowa grupa plików Jeśli podstawowych**[]** jest określony.Jeśli wszystkie określone tylko jeden file_group_name można określić.

  • file_group_name| PRIMARY ,...n
    Określa nazwy aplikacjami do przechowywania partycji określonego przez partition_function_name.file_group_namemusi istnieć w bazie danych.

    Jeśli podstawowych**[]** jest określony, partycja jest przechowywany na podstawowa grupa plików.Jeśli wszystkie określone tylko jeden file_group_name można określić.Partycje są przypisane do aplikacjami, począwszy od partycji 1, w kolejności, w liście aplikacjami w ,...n.Tym samym file_group_name może być określony więcej niż jeden czas w [,...n.Jeśli n nie wystarcza do przechowywania liczby partycji określonego w partition_function_name, utworzyć schemat PARTYCJI kończy się niepowodzeniem z błędu.

    Jeśli partition_function_name generuje partycje mniejsze niż aplikacjami, nieprzypisane pierwsza grupa plików jest oznaczony jako NASTĘPNY używane i wyświetla komunikat informacyjny nazw używana NASTĘPNA grupa plików.Jeśli wszystkie określone jedyny file_group_name zachowuje jej dalej używane właściwość dla tej partition_function_name.Jeśli jednego jest tworzona w zmieniać funkcji PARTYCJI instrukcja, używana NASTĘPNA grupa plików zostanie wyświetlony dodatkowych partycji.Aby utworzyć dodatkowe aplikacjami nieprzypisane do przechowywania nowych partycji, należy zmienić schemat PARTYCJI.

    Po określeniu podstawowa grupa plików w file_group_name1**,...n, podstawowy musi być rozdzielane, jak w podstawowych[]**, ponieważ jest słowem kluczowym.

Uprawnienia

Następujące uprawnienia może służyć do wykonać tworzenie PARTYCJI SCHEMATU:

  • ZMIEŃ DOWOLNE DATASPACE uprawnienia.To uprawnienie jest domyślnie członkami sysadmin stała rola serwera i db_owner i db_ddladmin ról stałej bazy danych.

  • FORMANT lub ZMIEŃ uprawnienie do bazy danych, w którym utworzony schemat partycji .

  • FORMANT serwera lub ALTER DATABASE dowolny uprawnień na serwerze bazy danych, w którym utworzony schemat partycji .

Przykłady

A.Tworzenie schemat partycji mapuje każdej partycji na różne grupa plików

Poniższy przykład tworzy partycję funkcja do dzielenia na czterech partycji tabela lub indeksu.schemat partycji zostanie utworzona określająca aplikacjami do przechowywania każdej z czterech partycji.W tym przykładzie założono, że aplikacjami już istnieje w bazie danych.

CREATE PARTITION FUNCTION myRangePF1 (int)
AS RANGE LEFT FOR VALUES (1, 100, 1000);
GO
CREATE PARTITION SCHEME myRangePS1
AS PARTITION myRangePF1
TO (test1fg, test2fg, test3fg, test4fg);

Partycji tabela partycji, funkcja myRangePF1 na partycjonowanie kolumna Kol1 czy przypisany, jak pokazano w poniższej tabela.

Grupa plików

test1fg

test2fg

test3fg

test4fg

Partycja

1

2

3

4

Wartości

col1 <=1

col1 > 1 AND col1 <=100

col1 > 100 AND col1 <=1000

Kol1 > 1000

B.Tworzenie schemat partycji mapuje wiele partycji na tej samej grupa plików

Jeśli wszystkie partycje mapować do tej samej grupa plików, użyj wszystkie słowa kluczowego.Ale jeśli wiele, ale nie wszystkie partycje są mapowane do tej samej grupa plikówmusi zostać powtórzona nazwa grupa plików , jak pokazano w poniższym przykładzie.

CREATE PARTITION FUNCTION myRangePF2 (int)
AS RANGE LEFT FOR VALUES (1, 100, 1000);
GO
CREATE PARTITION SCHEME myRangePS2
AS PARTITION myRangePF2
TO ( test1fg, test1fg, test1fg, test2fg );

Partycji tabela partycji, funkcja myRangePF2 na partycjonowanie kolumna Kol1 czy przypisany, jak pokazano w poniższej tabela.

Grupa plików

test1fg

test1fg

test1fg

test2fg

Partycja

1

2

3

4

Wartości

col1 <=1

col1 > 1 AND col1 <=100

col1 > 100 AND col1 <=1000

Kol1 > 1000

C.Tworzenie schemat partycji odwzorowuje wszystkie partycje do tej samej grupa plików

Poniższy przykład tworzy tej samej partycji funkcja w poprzednich przykładach i tworzony jest schemat partycji , który mapuje wszystkie partycje na tej samej grupa plików.

CREATE PARTITION FUNCTION myRangePF3 (int)
AS RANGE LEFT FOR VALUES (1, 100, 1000);
GO
CREATE PARTITION SCHEME myRangePS3
AS PARTITION myRangePF3
ALL TO ( test1fg );

D.Tworzenie schemat partycji określa "dalej" grupa plików

Poniższy przykład tworzy tej samej partycji funkcja w poprzednich przykładach i schemat partycji jest tworzony z listą aplikacjami więcej niż partycje utworzone przez partycji skojarzonej funkcja.

CREATE PARTITION FUNCTION myRangePF4 (int)
AS RANGE LEFT FOR VALUES (1, 100, 1000);
GO
CREATE PARTITION SCHEME myRangePS4
AS PARTITION myRangePF4
TO (test1fg, test2fg, test3fg, test4fg, test5fg)

Wykonywanie instrukcja zwraca następujący komunikat o błędzie.

Partition scheme 'myRangePS4' has been created successfully. 'test5fg' is marked as the next used filegroup in partition scheme 'myRangePS4'.

Jeśli funkcjapartycjimyRangePF4 jest zmieniany na dodawanie partycji, grupa plików test5fg odbiera nowo utworzonej partycji.