ALTER SCHEMA

Şunlar için geçerlidir:onay işareti evet olarak işaretlenmiş Databricks SQL onay işareti evet olarak işaretlenmiş Databricks Runtime

Bir şemanın sahibini değiştirir, bir şemanın yönetilen depolama konumunu değiştirir, tahmine dayalı iyileştirme davranışını ayarlar veya ayarlayarak DBPROPERTIESşemayla ilişkili meta verileri değiştirir. Belirtilen özellik değerleri, aynı özellik adına sahip mevcut değerleri geçersiz kılar.

SCHEMA ve DATABASE değiştirilebilir şekilde kullanılabilirken, SCHEMA tercih edilir.

Sözdizimi

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 }

Parametreler

  • schema_name

    Değiştirilecek şemanın adı. Şema bulunamazsa Azure Databricks bir SCHEMA_NOT_FOUND hatası oluşturur.

  • VARSAYıLAN HARMANLAMA default_collation_name

    Şunun için geçerlidir:evet olarak işaretlendi Databricks SQL denetimi evet olarak işaretlendi Databricks Runtime 17.1 ve üzeri

    Şema içinde tanımlanan yeni nesneler için varsayılan harmanlamayı değiştirir. Şemadaki mevcut nesnelerin varsayılan harmanlaması değiştirilmez.

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

    Ayarlanacak veya ayardan kaldırılacak şema özellikleri.

  • [ SET ] SAHİBİNDEN ana

    Şemanın sahipliğini öğesine aktarır principal.

    Şunlar için geçerlidir:onay işareti evet olarak işaretlenmiş Databricks SQL onay işareti evet olarak işaretlenmiş Databricks Runtime 11.3 LTS ve üzeri

    SET isteğe bağlı anahtar sözcük olarak izin verilir.

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

    Şemaya etiket uygulama. Şemaya bir etiket uygulamanız gerekir USE SCHEMA .

    Şunlar için geçerlidir:onay işareti evet olarak işaretlenmiş Databricks SQL onay işareti evet olarak işaretlenmiş Databricks Runtime 13.3 LTS ve üzeri

  • ETIKETLERİN KÜMESİNİ KALDIR ( tag_name [, ...] )

    Şemadan etiketleri kaldırın. Şemadan bir etiketi kaldırmak için USE SCHEMA'e sahip olmanız gerekir.

    Şunlar için geçerlidir:onay işareti evet olarak işaretlenmiş Databricks SQL onay işareti evet olarak işaretlenmiş Databricks Runtime 13.3 LTS ve üzeri

  • tag_name

    Değişmez değer STRING. tag_name şeması içinde benzersiz olmalıdır.

  • tag_value

    Değişmez değer STRING.

  • { ETKİNLEŞTİR | DEVRE DIŞI BIRAK | DEVİR AL } TAHMİNE DAYALI İYİLEŞTİRME

    Şunlar için geçerlidir:evet işaretli Databricks SQL evet işaretli Databricks Runtime 12.2 LTS ve üzeri evet işaretli yalnızca Unity Katalog

    Şemayı istenen tahmine dayalı iyileştirme ayarıyla değiştirir. Varsayılan olarak, şemalar oluşturulduğunda davranış INHERIT katalogdan seçmektir. Varsayılan olarak, şemada oluşturulan yeni nesneler ayarı şemadan devralır.

    Şema değiştirilirse, davranış tahmine dayalı iyileştirmeyi devralan tüm nesnelere art arda eklenir. Açıkça ENABLE veya DISABLE tahmine dayalı iyileştirme yapan nesneler şema ayarından etkilenmez.

    Bir şema için tahmine dayalı iyileştirmeyi ayarlamak için kullanıcının şema üzerinde izni olmalıdır CREATE .

    Yalnızca Delta Özellikli Olmayan Paylaşımdaki şemalar, Unity Kataloğu'ndaki yönetilen kataloglar tahmine dayalı iyileştirme için uygundur.

  • SET YÖNETİLEMİ KONUMU

    Şunun için geçerlidir:evet olarak işaretlendi Databricks SQL denetimi evet olarak işaretlendi Databricks Runtime 18.1 ve üzeri denetim evet yalnızca Unity Kataloğu olarak işaretlendi

    Standart şemanın yönetilen depolama konumunu değiştirir. Şemada oluşturulan yeni yönetilen tablolar ve yönetilen birimler güncelleştirilmiş konumu kullanır. Databricks var olan nesneleri taşımaz.

    • lokasyon

      Yeni yönetilen depolama konumu için bulut depolama yolu. Bir dış konumda yer almalıdır.

Örnekler

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