UBAH TAMPILAN

Berlaku untuk:centang ditandai ya Databricks SQL centang ditandai ya Databricks Runtime

Mengubah metadata yang terkait dengan tampilan. Tindakan ini dapat mengubah definisi tampilan, mengubah nama tampilan ke nama yang berbeda, mengatur dan membuka set metadata tampilan dengan mengatur TBLPROPERTIES.

Jika tampilan dicache, perintah menghapus data cache dari tampilan dan semua tanggungannya yang merujuk kepadanya. Cache tampilan akan diisi dengan lambat saat tampilan diakses di lain waktu. Perintah meninggalkan tanggungan tampilan sebagai tidak dicache.

Sintaks

ALTER [ MATERIALIZED ] VIEW view_name
  { rename |
    SET TBLPROPERTIES clause |
    UNSET TBLPROPERTIES clause |
    alter_body |
    owner_to |
    schedule
    SET TAGS clause |
    UNSET TAGS clause }}}

rename
  RENAME TO to_view_name

alter_body
  AS query

property_key
  { idenitifier [. ...] | string_literal }

owner_to
  [ SET ] OWNER TO principal

schedule
  {
    { ADD | ALTER } SCHEDULE [ REFRESH ]
      CRON cron_string [ AT TIME ZONE timezone_id ] |
    DROP SCHEDULE
  }

Parameter

  • view_name

    Mengidentifikasi tampilan yang akan diubah. Jika tampilan tidak dapat ditemukan, Azure Databricks menimbulkan kesalahan TABLE_OR_VIEW_NOT_FOUND .

  • MENGGANTI NAMA KE to_view_name

    Mengganti nama tampilan yang ada dalam skema. Tampilan materialisasi tidak dapat diganti namanya.

    to_view_name menentukan nama baru tampilan. Jika to_view_name sudah ada, TableAlreadyExistsException akan dibuang. Jika to_view_name memenuhi syarat, itu harus sesuai dengan nama skema dari view_name.

  • ATUR TBLPROPERTIES

    Mengatur satu atau beberapa properti yang ditentukan pengguna.

  • HAPUS PENGATURAN TBLPROPERTIES

    Menghapus satu atau beberapa properti yang ditentukan pengguna.

  • AS kueri

    Kueri yang membuat tampilan dari tabel dasar atau tampilan lainnya.

    Klausa ini setara dengan pernyataan CREATE OR REPLACE VIEW pada tampilan yang ada, kecuali bahwa hak istimewa yang diberikan pada tampilan dipertahankan.

  • [ SET ] OWNER TO principal

    Transfer kepemilikan tampilan ke principal. Anda hanya dapat mentransfer kepemilikan ke grup tempat Anda berada, kecuali tampilan ditentukan dalam hive_metastore.

    Berlaku untuk:centang ditandai ya Databricks SQL centang ditandai ya Databricks Runtime 11.3 LTS ke atas

    SET diperbolehkan sebagai kata kunci opsional.

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

    Terapkan tag ke tampilan. Anda harus memiliki apply_tag izin untuk menambahkan tag ke tampilan.

    Berlaku untuk:centang ditandai ya Databricks SQL centang ditandai ya Databricks Runtime 13.3 LTS ke atas

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

    Menghapus tag dari tabel. Anda harus memiliki apply_tag izin untuk menghapus tag dari tampilan.

    Berlaku untuk:centang ditandai ya Databricks SQL centang ditandai ya Databricks Runtime 13.3 LTS ke atas

  • tag_name

    Harfiah STRING. tag_name harus unik dalam tampilan.

  • tag_value

    Harfiah STRING.

  • SCHEDULE [ REFRESH ] CRON cron_string [ AT TIME ZONE timezone_id ]

    Memungkinkan Anda menambahkan jadwal ke atau mengubah jadwal tampilan materialisasi.

    Jika disediakan, menjadwalkan tabel streaming atau tampilan materialisasi untuk me-refresh datanya dengan jadwal cron kuarsa yang diberikan. Hanya time_zone_values yang diterima. AT TIME ZONE LOCAL tidak didukung. Jika AT TIME ZONE tidak ada, zona waktu sesi digunakan. Jika AT TIME ZONE tidak ada dan zona waktu sesi tidak diatur, kesalahan akan muncul. SCHEDULE secara semantik setara SCHEDULE REFRESHdengan .

    Anda tidak dapat menggunakan SCHEDULE sintaks dalam definisi alur Delta Live Tables.

Contoh

-- Rename only changes the view name.
-- The source and target schemas of the view have to be the same.
-- Use qualified or unqualified name for the source and target view.
> ALTER VIEW tempsc1.v1 RENAME TO tempsc1.v2;

-- Verify that the new view is created.
> DESCRIBE TABLE EXTENDED tempsc1.v2;
                            c1       int   NULL
                            c2    string   NULL

  # Detailed Table Information
                      Database   tempsc1
                         Table        v2

-- Before ALTER VIEW SET TBLPROPERTIES
> DESCRIBE TABLE EXTENDED tempsc1.v2;
                            c1       int   null
                            c2    string   null

  # Detailed Table Information
                      Database   tempsc1
                         Table        v2
              Table Properties    [....]

-- Set properties in TBLPROPERTIES
> ALTER VIEW tempsc1.v2 SET TBLPROPERTIES ('created.by.user' = "John", 'created.date' = '01-01-2001' );

-- Use `DESCRIBE TABLE EXTENDED tempsc1.v2` to verify
> DESCRIBE TABLE EXTENDED tempsc1.v2;
                            c1                                                   int   NULL
                            c2                                                string   NULL

  # Detailed Table Information
                      Database                                               tempsc1
                         Table                                                    v2
              Table Properties [created.by.user=John, created.date=01-01-2001, ....]

-- Remove the key created.by.user and created.date from `TBLPROPERTIES`
> ALTER VIEW tempsc1.v2 UNSET TBLPROPERTIES (`created`.`by`.`user`, created.date);

-- Use `DESCRIBE TABLE EXTENDED tempsc1.v2` to verify the changes
> DESCRIBE TABLE EXTENDED tempsc1.v2;
                            c1       int   NULL
                            c2    string   NULL

  # Detailed Table Information
                      Database   tempsc1
                         Table        v2
              Table Properties    [....]

-- Change the view definition
> ALTER VIEW tempsc1.v2 AS SELECT * FROM tempsc1.v1;

-- Use `DESCRIBE TABLE EXTENDED` to verify
> DESCRIBE TABLE EXTENDED tempsc1.v2;
                            c1                        int   NULL
                            c2                     string   NULL

  # Detailed Table Information
                      Database                    tempsc1
                         Table                         v2
                          Type                       VIEW
                     View Text   select * from tempsc1.v1
            View Original Text   select * from tempsc1.v1

-- Transfer ownership of a view to another user
> ALTER VIEW v1 OWNER TO `alf@melmak.et`

-- Adds a schedule to refresh a materialized view once a day
-- at midnight in Los Angeles
> ALTER MATERIALIZED VIEW my_mv
    ADD SCHEDULE CRON '0 0 0 * * ? *' AT TIME ZONE 'America/Los_Angeles';

-- Alters the schedule to run every 15 minutes for a materialized view
> ALTER MATERIALIZED VIEW my_mv
    ALTER SCHEDULE CRON '0 0/15 * * * ? *';

-- Drops the schedule for a materialized view
> ALTER MATERIALIZED VIEW my_mv
    DROP SCHEDULE;

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

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