次の方法で共有


ALTER SCHEMA

適用対象: 「はい」チェックマークがオンDatabricks SQL 「はい」チェックマークがオン Databricks Runtime

スキーマの所有者を変更したり、スキーマのマネージド ストレージの場所を変更したり、 予測最適化 動作を設定したり、 DBPROPERTIES設定してスキーマに関連付けられているメタデータを変更したりします。 指定したプロパティ値によって、同じプロパティ名を持つ既存の値がオーバーライドされます。

SCHEMADATABASE の使用は交換可能ですが、SCHEMA をお勧めします。

構文

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 }

パラメーター

  • schema_name

    変更するスキーマの名前。 スキーマが見つからない場合、Azure Databricksは SCHEMA_NOT_FOUND エラーを発生させます。

  • デフォルトの照合順序 default_collation_name

    適用対象:はい Databricks SQL チェックが Databricks Runtime 17.1 以降" とマークされているチェック

    スキーマ内で定義された新しいオブジェクトの既定の照合順序を変更します。 スキーマ内の既存のオブジェクトの既定の照合順序は変更されません。

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

    設定または設定解除するスキーマ プロパティ。

  • [ SET ] 所有者を主要

    スキーマの所有権を principal に譲渡します。

    適用対象:「はい」チェックマークがオン Databricks SQL 「はい」チェックマークがオン Databricks Runtime 11.3 LTS 以降

    SET は省略可能なキーワードとして使用できます。

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

    タグをスキーマに適用します。 タグをスキーマに適用するには、USE SCHEMA が必要です。

    適用対象:「はい」チェックマークがオン Databricks SQL 「はい」チェックマークがオン Databricks Runtime 13.3 LTS 以降

  • タグを解除 (タグ名 [, …])

    スキーマからタグを削除します。 スキーマからタグを削除するには、USE SCHEMA が必要です。

    適用対象:「はい」チェックマークがオン Databricks SQL 「はい」チェックマークがオン Databricks Runtime 13.3 LTS 以降

  • tag_name

    リテラル STRING です。 tag_name は、スキーマ内で一意である必要があります。

  • tag_value

    リテラル STRING です。

  • { ENABLE |DISABLE |INHERIT } 予測最適化

    適用対象:「はい」チェックマークがオン Databricks SQL 「はい」チェックマークがオン Databricks Runtime 12.2 LTS 以降「はい」チェックマークがオン Unity Catalog のみ

    スキーマを目的の予測最適化設定に変更します。 デフォルトでは、スキーマが作成されたときの動作は、カタログから INHERIT です。 既定では、スキーマに作成された新しいオブジェクトは、スキーマから設定を継承します。

    スキーマが変更されると、その動作は予測最適化を継承するすべてのオブジェクトにカスケードされます。 予測最適化を明示的に ENABLE または DISABLE するオブジェクトは、スキーマ設定の影響を受けません。

    スキーマの予測最適化を設定するには、スキーマに対する CREATE のアクセス許可が必要です。

    Delta Sharing 以外のスキーマ、Unity Catalog のマネージド カタログのみが予測最適化の対象となります。

  • SET 管理された場所

    適用対象:はい Databricks SQL チェックが Databricks Runtime 18.1" とマークされ、上記のチェックで

    標準スキーマのマネージド ストレージの場所を変更します。 スキーマで作成された新しいマネージド テーブルとマネージド ボリュームでは、更新された場所が使用されます。 Databricks は既存のオブジェクトを移動しません。

    • 場所

      新しいマネージド ストレージの場所のクラウド ストレージ パス。 外部の場所に含まれている必要があります。

-- 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/';