Udostępnij za pośrednictwem


ALTER VIEW

Dotyczy: zaznacz pole wyboru oznaczone jako tak Databricks SQL zaznacz pole wyboru oznaczone jako tak Databricks Runtime

Zmienia metadane skojarzone z widokiem. Może zmienić definicję widoku, zmienić nazwę widoku na inną nazwę, ustawić i usunąć ustawienia metadanych widoku TBLPROPERTIES.

Jeśli widok jest buforowany, polecenie czyści buforowane dane widoku i wszystkie jego zależności odwołujące się do niego. Pamięć podręczna widoku zostanie wypełniona z opóźnieniem po następnym korzystaniu z widoku. Polecenie pozostawia zależności widoku jako niebuforowane.

Składnia

ALTER VIEW view_name
  { rename |
    SET TBLPROPERTIES clause |
    UNSET TBLPROPERTIES clause |
    alter_body |
    schema_binding |
    owner_to |
    SET TAGS clause |
    UNSET TAGS clause }

rename
  RENAME TO to_view_name

alter_body
  AS query

schema_binding
  WITH SCHEMA { BINDING | [ TYPE ] EVOLUTION | COMPENSATION }

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

owner_to
  [ SET ] OWNER TO principal

Parametry

  • view_name

    Identyfikuje widok, który ma zostać zmieniony. Jeśli nie można odnaleźć widoku usługi Azure Databricks, wystąpi błąd TABLE_OR_VIEW_NOT_FOUND .

  • ZMIEŃ NAZWĘ NA TO_VIEW_NAME

    Zmienia nazwę istniejącego widoku w schemacie. Nie można zmienić nazwy zmaterializowanych widoków.

    to_view_name określa nową nazwę widoku. to_view_name Jeśli element już istnieje, TableAlreadyExistsException zostanie zgłoszony element . Jeśli to_view_name jest kwalifikowana, musi być zgodna z nazwą schematu .view_name

  • SET TBLPROPERTIES

    Ustawia lub resetuje co najmniej jedną właściwości zdefiniowaną przez użytkownika.

  • UNSET TBLPROPERTIES

    Usuwa co najmniej jedną właściwości zdefiniowaną przez użytkownika.

  • Zapytanie AS

    Zapytanie, które konstruuje widok z tabel podstawowych lub innych widoków.

    Ta klauzula jest równoważna instrukcji CREATE OR REPLACE VIEW w istniejącym widoku, z tą różnicą, że uprawnienia przyznane w widoku są zachowywane.

  • schema_binding

    Dotyczy: zaznacz pole wyboru oznaczone jako tak Databricks Runtime 15.3 i nowsze

    Określa, jak kolejne wykonywanie zapytań w widoku dostosowuje się do zmian w schemacie widoku ze względu na zmiany w definicjach obiektów bazowych. Zobacz CREATE VIEW... WITH SCHEMA (SCHEMAT) zawiera szczegółowe informacje na temat trybów powiązań schematu.

  • [ SET ] WŁAŚCICIEL DO podmiotu zabezpieczeń

    Przenosi własność widoku na principal. Chyba że widok jest zdefiniowany w elemecie hive_metastore , użytkownik może przenieść własność tylko do grupy, do której należysz.

    Dotyczy: zaznacz pole wyboru oznaczone jako tak Databricks SQL zaznacz pole wyboru oznaczone jako tak Databricks Runtime 11.3 LTS i nowsze

    SET jest dozwolone jako opcjonalne słowo kluczowe.

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

    Zastosuj tagi do widoku. Musisz mieć APPLY TAG uprawnienia do dodawania tagów do widoku.

    Dotyczy: zaznacz pole wyboru oznaczone jako tak Databricks SQL zaznacz pole wyboru oznaczone jako tak Databricks Runtime 13.3 LTS i nowsze

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

    Usuń tagi z tabeli. Musisz mieć APPLY TAG uprawnienia do usuwania tagów z widoku.

    Dotyczy: zaznacz pole wyboru oznaczone jako tak Databricks SQL zaznacz pole wyboru oznaczone jako tak Databricks Runtime 13.3 LTS i nowsze

  • tag_name

    Literał STRING. Element tag_name musi być unikatowy w widoku.

  • tag_value

    Literał STRING.

Przykłady

-- 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`

-- Change the view schema binding to adopt type evolution
> ALTER VIEW v1 WITH SCHEMA TYPE EVOLUTION;

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