ALTER VIEW
Dotyczy: Databricks SQL 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
-
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ślito_view_name
jest kwalifikowana, musi być zgodna z nazwą schematu .view_name
-
Ustawia lub resetuje co najmniej jedną właściwości zdefiniowaną przez użytkownika.
-
Usuwa co najmniej jedną właściwości zdefiniowaną przez użytkownika.
-
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.
-
Dotyczy: 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 elemeciehive_metastore
, użytkownik może przenieść własność tylko do grupy, do której należysz.Dotyczy: Databricks SQL 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: Databricks SQL 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: Databricks SQL Databricks Runtime 13.3 LTS i nowsze
tag_name
Literał
STRING
. Elementtag_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');