Sdílet prostřednictvím


Úprava schématu oddílů

platí pro:SQL ServerAzure SQL Databaseazure SQL Managed Instance

Schéma oddílů ve službě SQL Server, Azure SQL Database a Azure SQL Managed Instance můžete upravit tak, že navrhnete skupinu souborů pro uložení dalšího oddílu přidaného do dělené tabulky pomocí SQL Server Management Studio (SSMS) nebo Transact-SQL. Provedete to přiřazením vlastnosti NEXT USED ke skupině souborů.

Vlastnost NEXT USED můžete přiřadit prázdné skupině souborů nebo k objektu, který již obsahuje oddíl. Jinými slovy, skupina souborů může obsahovat více než jeden oddíl. Přečtěte si další informace o skupinách souborů a strategiích dělení v Filegroups .

Dělení tabulek je k dispozici také ve vyhrazených fondech SQL ve službě Azure Synapse Analytics s některými rozdíly v syntaxi. Další informace najdete v Dělení tabulek ve vyhrazeném fondu SQL.

Omezení

Všechny skupiny souborů ovlivněné schématem ALTER PARTITION musí být online.

Poznámka

Azure SQL Database podporuje pouze skupinu souborů PRIMARY.

Dovolení

Ke spuštění SCHÉMATU ALTER PARTITION lze použít následující oprávnění:

  • ALTER ANY DATASPACE oprávnění. Toto oprávnění ve výchozím nastavení platí pro členy správce systému pevnou roli serveru a db_owner a db_ddladmin pevné databázové role.

  • Oprávnění CONTROL nebo ALTER k databázi, ve které bylo schéma oddílů vytvořeno.

  • CONTROL SERVER nebo oprávnění ALTER ANY DATABASE na serveru, kde se nachází databáze, ve které bylo schéma oddílů vytvořeno.

Úprava schématu oddílů pomocí Transact-SQL

Tento příklad používá ukázkovou databázi AdventureWorks.

  1. V Průzkumníku objektůse připojte k instanci databázového serveru.

  2. Na panelu Standard vyberte Nový dotaz.

  3. Zkopírujte a vložte následující příklad do okna dotazu a vyberte Spustit.

    Poznámka

    Pro zjednodušení tento kód vytvoří nové skupiny souborů, ale nepřiřazuje jim soubory. To umožňuje demonstrovat, jak změnit schéma oddílů, ale není to úplným příkladem konfigurace děleného objektu. Příklady vytváření dělených tabulek a indexů v Vytvoření dělených tabulek a indexů.

    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  
    

Odstranit schéma oddílů pomocí SSMS

  1. V Průzkumník objektůse připojte k cílové databázi.

  2. Výběrem znaménka plus rozbalte databázi, ze které chcete smazat schéma oddílů.

  3. Klikněte na znaménko plus pro rozbalení složky Storage.

  4. Výběrem znaménka plus rozbalte složku Schémata oddílů.

  5. Pravým tlačítkem myši klikněte na schéma oddílů, které chcete odstranit, a vyberte Odstranit.

  6. V dialogovém okně Odstranit objekt zkontrolujte, zda je vybrané správné schéma oddílů, a pak vyberte OK.

Další kroky

Další informace o dělení tabulek najdete v těchto článcích: