ALTER SHARE

Şunlar için geçerlidir:onay işareti evet olarak işaretlenmiş Yalnızca Databricks SQL onay işareti evet olarak işaretlenmiş Databricks Runtime 10.4 LTS ve üzeri onay işareti evet olarak işaretlenmiş Unity Kataloğu

Paylaşıma şemalar, tablolar, gerçekleştirilmiş görünümler veya görünümler ekler, değiştirir veya kaldırır. Paylaşımı yeniden adlandırır. Paylaşımın sahipliğini yeni bir sorumluya aktarır.

Gerekli izinler:

  • Paylaşım sahibini güncelleştirmek için aşağıdakilerden biri olmanız gerekir: meta veri deposu yöneticisi, paylaşım nesnesinin sahibi veya hem hem SET SHARE PERMISSION de USE SHARE ayrıcalıklarına sahip bir kullanıcı.
  • Paylaşım adını güncelleştirmek için meta veri deposu yöneticisi (veya ayrıcalığı olan CREATE_SHARE kullanıcı) ve paylaşım sahibi olmanız gerekir.
  • Tablo veya görünüm eklemek için, paylaşım nesnesinin sahibi olmanız, USE SCHEMA tablo veya görünümü içeren şemada ve SELECT tablo veya görünümde ayrıcalığınız olmalıdır. Tabloyu veya görünümü paylaşmak istediğiniz sürece ayrıcalığı korumanız SELECT gerekir.
  • Diğer paylaşım özelliklerini güncelleştirmek için sahip olmanız gerekir.

Sözdizimi

ALTER SHARE share_name
  { alter_add_materialized_view |
    REMOVE MATERIALIZED VIEW mat_view_name |
    alter_add_table |
    REMOVE TABLE table_name |
    alter_add_schema |
    REMOVE SCHEMA schema_name |
    alter_add_view |
    REMOVE VIEW view_name |
    alter_add_model |
    REMOVE MODEL model_name |
    RENAME TO to_share_name |
    [ SET ] OWNER TO principal }

alter_add_materialized_view
  { { ALTER | ADD } MATERIALIZED VIEW mat_view_name [ COMMENT comment ] [ AS mat_view_share_name ]

alter_add_table
  { { ALTER | ADD } [ TABLE ] table_name [ COMMENT comment ]
        [ PARTITION clause ] [ AS table_share_name ]
        [ WITH HISTORY | WITHOUT HISTORY ] }

alter_add_schema
  { { ALTER | ADD } SCHEMA schema_name [ COMMENT comment ]

alter_add_view
  { { ALTER | ADD } VIEW view_name [ COMMENT comment ] [ AS view_share_name ]

alter_add_model
  { { ALTER | ADD } VIEW model_name [ COMMENT comment ] [ AS model_share_name ]

Not

WITH HISTORY | WITHOUT HISTORY Databricks Runtime 12.2 LTS ve üzerinde desteklenir onay işareti evet olarak işaretlenmiş . Databricks Runtime sürüm 11.1 ile 12.0 arasında, yerine WITH HISTORYbelirtmenizi WITH CHANGE DATA FEED [ START VERSION version ] ] gerektirir.

WITH CHANGE DATA FEED kullanım dışı bırakıldı.

Ayrıca, zaman yolculuğu sorguları ve akış okumalarına ek olarak müşterilerinizin table_changes() işlevini kullanarak bir tablonun değişiklik veri akışını (CDF) sorgulayabilmesini istiyorsanız, paylaşmadan WITH HISTORY önce (veya WITH CHANGE DATA FEED) tabloda CDF'yi etkinleştirmeniz gerektiğini unutmayın.

Parametreler

  • share_name

    Değiştirilecek paylaşımın adı.

  • alter_add_materialized_view

    Ş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

    Önemli

    Bu özellik, Özel Önizleme sürümündedir. Denemek için Azure Databricks tarafındaki ilgili kişinize ulaşın.

    Paylaşıma gerçekleştirilmiş bir görünüm ekler veya mevcut bir paylaşılan gerçekleştirilmiş görünümü değiştirir. Bu deyimi çalıştırmak için paylaşımın sahibi olmanız ve gerçekleştirilmiş görünümde ayrıcalıklara sahip SELECT olmanız gerekir.

    • ADD MATERIALIZED VIEW mat_view_name

      Eklenecek gerçekleştirilmiş görünümü tanımlar. Gerçekleştirilmiş görünüm bulunamazsa Azure Databricks bir TABLE_OR_VIEW_NOT_FOUND hatası oluşturur.

    • ALTER MATERIALIZED VIEW mat_view_name

      Değiştirilecek gerçekleştirilmiş görünümü tanımlar. Gerçekleştirilmiş görünüm paylaşımın bir parçası değilse Azure Databricks bir hata oluşturur.

    • COMMENT comment

      Gerçekleştirilmiş görünüm paylaşımına açıklama olarak eklenmiş isteğe bağlı STRING değişmez değer.

    • AS mat_view_share_name

      İsteğe bağlı olarak gerçekleştirilmiş görünümü farklı bir adla kullanıma sunar. Ad bir şema adıyla nitelenebilir. Belirtilmezse mat_view_share_name , gerçekleştirilmiş görünüm kendi adıyla bilinir.

      Paylaşılan ad zaten varsa, Azure Databricks bir hata oluşturur.

    • REMOVE MATERIALIZED VIEW mat_view_name

      Ş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

      Tarafından tanımlanan mat_view_name gerçekleştirilmiş görünümü paylaşımdan kaldırın. Bu deyimi çalıştırmak için paylaşımın sahibi olmanız gerekir.

    • alter_add_table

      Paylaşıma tablo veya tablo bölümleri ekler veya mevcut paylaşılan tabloyu değiştirir. Bu deyimi çalıştırmak için paylaşımın sahibi olmanız ve tabloda ayrıcalığınız olmalıdır SELECT .

      • ADD [ TABLE ] Table_name

        Eklenecek tabloyu tanımlar. Tablo Unity Kataloğu'nda olmamalıdır. Tablo bulunamazsa Azure Databricks bir TABLE_OR_VIEW_NOT_FOUND hatası oluşturur.

      • ALTER [ TABLE ] Table_name

        Değiştirilecek tabloyu tanımlar. Tablo henüz paylaşımın parçası değilse Azure Databricks bir hata oluşturur.

      • COMMENT comment

        Tablo paylaşımına açıklama olarak eklenmiş isteğe bağlı STRING değişmez değer.

      • PARTITION yan tümcesi

        Eklenecek tablonun bir veya daha fazla bölümü. Bölüm anahtarları, tablonun bölümlenmesiyle eşleşmeli ve değerlerle ilişkilendirilmelidir. Hayır PARTITION clause varsa ADD TABLE tablonun tamamını ekler.

        Alıcı özelliklerine başvuruya göre bölümleme yapmak için söz dizimini kullanın:

        PARTITION (column_name = CURRENT_RECIPIENT().<property-key>)
        

        Alıcı özelliklerine başvuruyla bölümleme Şunlar için geçerlidir:onay işareti evet olarak işaretlenmiş Databricks SQL onay işareti evet olarak işaretlenmiş Databricks Runtime 12.2 LTS ve üzeri.

      • AS table_share_name

        İsteğe bağlı olarak tabloyu farklı bir adla kullanıma sunar. Ad bir veritabanı (şema) adıyla nitelenebilir. Hayır table_share_name belirtilmezse, tablo kendi adı altında bilinir.

      • WITH HISTORY veya WITHOUT HISTORY

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

        Belirtildiğinde WITH HISTORY , tabloyu tam geçmişle paylaşarak alıcıların zaman yolculuğu sorguları gerçekleştirmesine izin verin. Daha sonra paylaşılan tabloya VERSION AS OF ve TIMESTAMP AS AS OF kullanılarak başvurulabilir.

        Zaman yolculuğu sorguları ve akış okumalarına ek olarak, müşterilerinizin table_changes() işlevini kullanarak tablonun değişiklik veri akışını (CDF) sorgulayabilmesini istiyorsanız, paylaşmadan WITH HISTORYönce tabloda CDF'yi etkinleştirmeniz gerekir.

        Varsayılan davranış şeklindedir WITHOUT HISTORY.

    • REMOVE TABLE Table_name

      tarafından tanımlanan table_name tabloyu paylaşımdan kaldırın. Bu deyimi çalıştırmak için paylaşımın sahibi olmanız gerekir.

    • alter_add_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

      Paylaşıma şema ekler veya mevcut paylaşılan şemayı değiştirir. Bu deyimi çalıştırmak için paylaşımın ve şemanın sahibi olmanız gerekir.

      • ADD SCHEMA Schema_name

        Eklenecek şemayı tanımlar. Şema bulunamazsa Azure Databricks bir SCHEMA_NOT_FOUND hatası oluşturur.

      • ALTER SCHEMA Schema_name

        Değiştirilecek şemayı tanımlar. Şema paylaşımın bir parçası değilse Azure Databricks bir hata oluşturur.

      • COMMENT comment

        Şema paylaşımına açıklama olarak eklenmiş isteğe bağlı STRING değişmez değer.

    • REMOVE SCHEMA Schema_name

      tarafından tanımlanan schema_name şemayı paylaşımdan kaldırın. Bu deyimi çalıştırmak için paylaşımın sahibi olmanız gerekir.

    • alter_add_view

      Ş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

      Paylaşıma bir görünüm ekler veya mevcut paylaşılan görünümü değiştirir. Bu deyimi çalıştırmak için paylaşımın sahibi olmanız ve görünümde ayrıcalığınız olmalıdır SELECT .

      • ADD VIEW view_name

        Eklenecek görünümü tanımlar. Görünüm bulunamazsa Azure Databricks bir TABLE_OR_VIEW_NOT_FOUND hatası oluşturur.

      • ALTER VIEW view_name

        Değiştirilecek görünümü tanımlar. Görünüm henüz paylaşımın parçası değilse Azure Databricks bir hata oluşturur.

      • COMMENT comment

        Görünüm paylaşımına açıklama olarak eklenmiş isteğe bağlı STRING değişmez değer.

      • AS view_share_name

        İsteğe bağlı olarak görünümü farklı bir adla kullanıma sunar. Ad bir şema adıyla nitelenebilir. Belirtilmezse view_share_name , görünüm kendi adıyla bilinir.

        Paylaşılan ad zaten varsa, Azure Databricks bir hata oluşturur.

    • REMOVE VIEW view_name

      tarafından tanımlanan view_name görünümü paylaşımdan kaldırın. Bu deyimi çalıştırmak için paylaşımın sahibi olmanız gerekir.

    • alter_add_model

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

      Paylaşıma bir model ekler veya mevcut paylaşılan modeli değiştirir. Bu deyimi çalıştırmak için paylaşımın sahibi olmanız ve modelde ayrıcalığınız olmalıdır EXECUTE .

      • ADD MODEL Model_name

        Eklenecek modeli tanımlar. Model bulunamazsa Azure Databricks bir RESOURCE_DOES_NOT_EXIST hatası oluşturur.

      • ALTER MODEL Model_name

        Değiştirilecek modeli tanımlar. Model azure databricks paylaşımının bir parçası değilse bir hata oluşturur.

      • COMMENT comment

        Model paylaşımına açıklama olarak eklenmiş isteğe bağlı STRING bir değişmez değer.

      • AS model_share_name

        İsteğe bağlı olarak modeli farklı bir adla kullanıma sunar. Ad bir şema adıyla nitelenebilir. Belirtilmezse model_share_name , model kendi adıyla bilinir.

        Paylaşılan ad zaten varsa, Azure Databricks bir hata oluşturur.

    • REMOVE MODEL Model_name

      tarafından tanımlanan model_name modeli paylaşımdan kaldırın. Bu deyimi çalıştırmak için paylaşımın sahibi olmanız gerekir.

    • RENAME TO to_share_name

      Ş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

      Paylaşımı yeniden adlandırır. Adın meta veri deposundaki tüm paylaşımlar arasında benzersiz olması gerekir. Bu deyimi çalıştırmak için paylaşımın sahibi olmanız ve meta veri deposunda ayrıcalığınız olmalıdır CREATE SHARE .

    • [ SET ] OWNER TO Asıl

      Paylaşımın sahipliğini öğesine principalaktarır. Bu deyimi çalıştırmak için paylaşımın sahibi 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 11.3 LTS ve üzeri

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

Örnekler

-- Creates a share named `some_share`.
> CREATE SHARE some_share;

-- Add a table to the share.
> ALTER SHARE some_share
     ADD TABLE my_schema.my_tab
         COMMENT 'some comment'
         PARTITION(c1_int = 5, c2_date LIKE '2021%')
         AS shared_schema.shared_tab;

-- Add a schema to the share.
> ALTER SHARE some_share
     ADD SCHEMA some_schema
         COMMENT 'some comment';

-- Add a view to the share.
> ALTER SHARE some_share
     ADD VIEW my_schema.my_view
         COMMENT 'some comment'
         AS shared_schema.shared_view;

-- Add a materialized view to the share.
> ALTER SHARE some_share
     ADD MATERIALIZED VIEW my_schema.my_mat_view
         COMMENT 'some comment'
         AS shared_schema.shared_mat_view;

-- Share a table with history
> ALTER SHARE share ADD TABLE table1 WITH HISTORY;
> ALTER SHARE share ADD TABLE table2 WITHOUT HISTORY;
> SHOW ALL IN SHARE share;
  Name    type   ... history_sharing  ...
  ------  ------ ... ----------------
  Table1  TABLE  ... ENABLED          ...
  Table2  TABLE  ... DISABLED         ...

-- Remove the table again
> ALTER SHARE some_share
    REMOVE TABLE shared_schema.shared_tab;

-- Remove the schema again
> ALTER SHARE some_share
    REMOVE SCHEMA some_schema;

-- Remove a view again
> ALTER SHARE some_share
    REMOVE VIEW shared_schema.shared_view;

-- Rename a share
> ALTER SHARE some_share
    RENAME TO new_share;

-- Change ownership of the share
> ALTER SHARE some_share
    OWNER TO `alf@melmak.et`