Delen via


ALTER TABLE PARTITION

Van toepassing op: vinkje als ja aan Databricks SQL vinkje als ja aan Databricks Runtime

Hiermee worden partities van een tabel toegevoegd, verwijderd, hernoemd of hersteld.

Het beheren van partities wordt niet ondersteund voor Delta Lake-tabellen.

Syntaxis

ALTER TABLE table_name
   { ADD PARTITION clause |
     DROP PARTITION clause |
     PARTITION SET LOCATION clause |
     RENAME PARTITION clause |
     RECOVER PARTITIONS clause }

ADD PARTITION clausule

Voegt een of meer partities toe aan de tabel.

Syntaxis

ADD [IF NOT EXISTS] { PARTITION clause [ LOCATION path ] } [...]

Parameters

  • IF NOT EXISTS

    Een optionele component waarmee Azure Databricks de instructie negeert als de partitie al bestaat.

  • PARTITION-component

    Een partitie die moet worden toegevoegd. De partitiesleutels moeten overeenkomen met de partitionering van de tabel en moeten worden gekoppeld aan waarden. Als de partitie al bestaat, wordt er een fout gegenereerd, tenzij IF NOT EXISTS deze is opgegeven.

  • LOCATION path

    path moet een STRING letterlijke waarde zijn die een optionele locatie aangeeft die verwijst naar de partitie.

    Als er geen locatie is opgegeven, wordt de locatie afgeleid van de locatie van de tabel en de partitiesleutels.

    Als er bestanden aanwezig zijn op de locatie waar ze de partitie vullen en compatibel moeten zijn met de tabel en de data_source bijbehorende opties.

DROP PARTITION clausule

Hiermee verwijdert u een of meer partities uit de tabel, eventueel bestanden op de locaties van de partities.

Syntaxis

DROP [ IF EXISTS ] PARTITION clause [, ...] [PURGE]

Parameters

  • IF EXISTS

    Wanneer u Azure Databricks opgeeft IF EXISTS , wordt een poging om partities te verwijderen genegeerd die niet bestaan. Anders veroorzaken niet-bestaande partities een fout.

  • PARTITION-component

    Hiermee geeft u een partitie die moet worden verwijderd. Als de partitie slechts gedeeltelijk wordt geïdentificeerd, wordt een segment partities verwijderd.

  • PURGE

    Indien ingesteld, moet de tabelcatalogus partitiegegevens verwijderen door de prullenbak te overslaan, zelfs wanneer de catalogus er een heeft geconfigureerd. De optie is alleen van toepassing op beheerde tabellen. Het is alleen effectief wanneer:

    Het bestandssysteem ondersteunt een prullenbak. De catalogus is geconfigureerd voor het verplaatsen van de verwijderde partitie naar de map Prullenbak. Er is geen prullenbakmap in AWS S3, dus het is niet effectief.

    Het is niet nodig om bestanden handmatig te verwijderen na het verwijderen van partities.

RENAME PARTITION clausule

Vervangt de sleutels van een partitie.

Syntaxis

from_partition_clause RENAME TO to_partition_clause

Parameters

  • from_partition_clause

    De definitie van de partitie waarvan de naam moet worden gewijzigd.

  • to_partition_clause

    De nieuwe definitie voor deze partitie. Er mag nog geen partitie met dezelfde sleutels bestaan.

RECOVER PARTITIONS clausule

Deze component is niet van toepassing op Delta Lake-tabellen.

Geeft Azure Databricks opdracht om de locatie van de tabel te scannen en bestanden toe te voegen aan de tabel die rechtstreeks aan het bestandssysteem zijn toegevoegd.

Syntaxis

RECOVER PARTITIONS

Parameters

Geen

COMPONENT PARTITION SET LOCATION

Hiermee verplaatst u de locatie van een partitie.

Syntaxis

PARTITION clause SET LOCATION path

Parameters

  • PARTITION-component

    Identificeert de partitie waarvoor de locatie moet worden gewijzigd.

  • LOCATION path

    path moet een STRING letterlijke naam zijn. Hiermee geeft u de nieuwe locatie voor de partitie.

    Bestanden op de oorspronkelijke locatie worden niet verplaatst naar de nieuwe locatie.

Voorbeelden

Zie ALTER TABLE-voorbeelden.