ALTER SCHEMA

Gilt für:Häkchen für „Ja“ Databricks SQL Häkchen für „Ja“ Databricks Runtime

Ändert den Besitzer eines Schemas, ändert den verwalteten Speicherort eines Schemas, legt das Verhalten der Vorhersageoptimierung fest, ändert metadaten, die einem Schema zugeordnet sind, indem festgelegt DBPROPERTIESoder der Wiederherstellungszeitraum für verworfene verwaltete Tabellen festgelegt wird. Die angegebenen Eigenschaftswerte überschreiben alle vorhandenen Werte mit demselben Eigenschaftennamen.

Auch wenn die Verwendung von SCHEMA und DATABASE austauschbar ist, sollte vorzugsweise SCHEMA verwendet werden.

Syntax

ALTER SCHEMA schema_name
    { DEFAULT COLLATION default_collation_name |
      SET DBPROPERTIES ( { key = val } [, ...] ) |
      [ SET ] OWNER TO principal
      SET TAGS ( { tag_name = tag_value } [, ...] ) |
      UNSET TAGS ( tag_name [, ...] ) |
      { ENABLE | DISABLE | INHERIT } PREDICTIVE OPTIMIZATION |
      SET MANAGED LOCATION location |
      [ SET ] RETAIN DROPPED TO number { HOUR | HOURS | DAY | DAYS | WEEK | WEEKS } }

Parameter

  • schema_name

    Name des Schemas, das geändert werden soll. Wenn das Schema nicht gefunden werden kann, löst Azure Databricks einen Fehler SCHEMA_NOT_FOUND aus.

  • STANDARDKOLLATION default_collation_name

    Gilt für:check marked yes Databricks SQL check marked yes Databricks Runtime 17.1 and above

    Ändert die Standardsortierung für neue Objekte, die im Schema definiert sind. Die Standardsortierung vorhandener Objekte innerhalb des Schemas wird nicht geändert.

  • DBPROPERTIES ( Key = val [, ...] )

    Die festzulegenden oder zu löschenden Schemaeigenschaften.

  • [ SET ] OWNER TO Prinzipal

    Überträgt den Besitz des Schemas an principal.

    Gilt für:Häkchen für „Ja“ Databricks SQL Häkchen für „Ja“ Databricks Runtime 11.3 LTS und höher

    SET ist als optionales Schlüsselwort zulässig.

  • SET TAGS ( { tag_name = tag_value } [, ...] )

    Wenden Sie Tags auf das Schema an. Sie benötigen USE SCHEMA, um ein Tag auf das Schema anwenden zu können.

    Gilt für:Häkchen für „Ja“ Databricks SQL Häkchen für „Ja“ Databricks Runtime 13.3 LTS und höher

  • UNSET TAGS ( tag_name [, ...] )

    Entfernen Sie Tags aus dem Schema. Sie benötigen USE SCHEMA, um ein Tag aus dem Schema entfernen zu können.

    Gilt für:Häkchen für „Ja“ Databricks SQL Häkchen für „Ja“ Databricks Runtime 13.3 LTS und höher

  • tag_name

    Ein STRING-Literal. tag_name muss innerhalb des Schemas eindeutig sein.

  • tag_value

    Ein STRING-Literal.

  • { AKTIVIEREN | DEAKTIVIEREN | VERERBEN } PROGNOSTISCHE OPTIMIERUNG

    Gilt für:Häkchen für „Ja“ Databricks SQL Häkchen für „Ja“ Databricks Runtime 12.2 LTS und höher Häkchen für „Ja“ Nur Unity Catalog

    Ändert das Schema in die gewünschte Einstellung für die prädiktive Optimierung. Wenn Schemas erstellt werden, wird standardmäßig aus dem Katalog geerbt (INHERIT). Standardmäßig erben neue Objekte, die im Schema erstellt wurden, die Einstellung vom Schema.

    Wenn das Schema geändert wird, wird das Verhalten an alle Objekte kaskadiert, die die prädiktive Optimierung erben. Objekte, die prädiktive Optimierung explizit aktivieren (ENABLE) oder deaktivieren (DISABLE) sind von der Schemaeinstellung nicht betroffen.

    Um die prädiktive Optimierung für ein Schema festzulegen, muss der Benutzer oder die Benutzerin über die Berechtigung CREATE für das Schema verfügen.

    Nur Schemas in nicht openSharing, verwalteten Katalogen im Unity-Katalog sind für die Vorhersageoptimierung berechtigt.

  • SET SPEICHERORT VERWALTETER SPEICHERORT

    Gilt für:check marked yes Databricks SQL check marked yes Databricks Runtime 18.1 and above check marked yes Unity Catalog only

    Ändert den verwalteten Speicherort für ein Standardschema. Neue verwaltete Tabellen und verwaltete Volumes, die im Schema erstellt wurden, verwenden den aktualisierten Speicherort. Bei Databricks werden vorhandene Objekte nicht verschoben.

    • Standort.

      Der Cloudspeicherpfad für den neuen verwalteten Speicherort. Er muss an einem externen Speicherort enthalten sein.

  • [ SET ] RETAIN DROPPED TO NUMBER { HOUR | STUNDEN | TAG | TAGE | WOCHE | WOCHEN }

    Gilt für:check marked yes Databricks Runtime 17.3 und höher als im Unity-Katalog markiert

    Important

    Dieses Feature befindet sich in der Public Preview.

    Legt den Wiederherstellungszeitraum für verworfene verwaltete Tabellen im Schema fest, der Zeitraum, in dem gelöschte Tabellen mithilfe des UNDROP TABLE Befehls wiederhergestellt werden können. Der Standardwert erbt vom übergeordneten Katalog (7 Tage, falls nicht festgelegt). Der Wert muss 0 Stunden (zum Deaktivieren der Wiederherstellung) oder zwischen 7 bis 30 Tagen (einschließlich) betragen.

    Das Festlegen des Wiederherstellungszeitraums auf 0 bedeutet, dass gelöschte Tabellen nicht wiederhergestellt werden können UNDROP , und Datendateien werden innerhalb von 48 Stunden aus dem Cloudspeicher gelöscht.

    Der Wiederherstellungszeitraum auf Schemaebene hat Vorrang vor allen Einstellungen auf Katalogebene für Tabellen im Schema. Diese Einstellung gilt nur für Tabellen, die nach der Konfiguration des Wiederherstellungszeitraums gelöscht wurden. Nach Beendigung des Wiederherstellungszeitraums werden Datendateien für verwaltete Tabellen innerhalb von 48 Stunden aus Ihrem Cloudspeicher gelöscht.

    SET ist als optionales Schlüsselwort zulässig. Erfordert MANAGE Berechtigungen oder Besitzrechte für das Schema. Siehe auch Ablegen einer verwalteten Tabelle.

Beispiele

-- Creates a schema named `inventory`.
> CREATE SCHEMA inventory;

-- Alters the schema to set properties `Edited-by` and `Edit-date`.
> ALTER SCHEMA inventory SET DBPROPERTIES ('Edited-by' = 'John', 'Edit-date' = '01/01/2001');

-- Verify that properties are set.
> DESCRIBE SCHEMA EXTENDED inventory;
 database_description_item                 database_description_value
 ------------------------- ------------------------------------------
             Database Name                                  inventory
               Description
                  Location    file:/temp/spark-warehouse/inventory.db
                Properties ((Edit-date,01/01/2001), (Edited-by,John))

-- Transfer ownership of the schema to another user
> ALTER SCHEMA inventory OWNER TO `alf@melmak.et`

-- Applies three tags to the schema named `test`.
> ALTER SCHEMA test SET TAGS ('tag1' = 'val1', 'tag2' = 'val2', 'tag3' = 'val3');

-- Removes three tags from the schema named `test`.
> ALTER SCHEMA test UNSET TAGS ('tag1', 'tag2', 'tag3');

-- Enables predictive optimization for objects in schema my_schema
> ALTER SCHEMA my_schema ENABLE PREDICTIVE OPTIMIZATION;

-- Alter the default collation of a schema
> ALTER SCHEMA my_schema DEFAULT COLLATION UNICODE_CI_AI;

-- Change the managed storage location of a schema
> ALTER SCHEMA my_catalog.my_schema SET MANAGED LOCATION 's3://my-bucket/schemas/my_schema/';

-- Set a 14-day recovery period for dropped managed tables in a schema
> ALTER SCHEMA my_catalog.my_schema RETAIN DROPPED TO 14 DAYS;

-- Set a 7-day recovery period (overrides any catalog-level setting)
> ALTER SCHEMA my_catalog.my_schema SET RETAIN DROPPED TO 7 DAYS;