ALTER VIEW
Gäller för: Databricks SQL Databricks Runtime
Ändrar metadata som är associerade med vyn. Den kan ändra definitionen av vyn, ändra namnet på en vy till ett annat namn, set och ta bort metadata för vyn genom att ange TBLPROPERTIES
.
Om du vill lägga till eller ändra en kommentar i en vy eller dess columnsanvänder du COMMENT ON.
Om vyn cachelagras rensar kommandot cachelagrade data i vyn och alla dess beroenden som refererar till den. Vyns cache fylls lazily när vyn öppnas nästa gång. Kommandot lämnar vyns beroenden oåtkomliga.
Syntax
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
Parameters
-
Identifierar vyn som ska ändras. Om vyn inte kan hittas genererar Azure Databricks ett TABLE_OR_VIEW_NOT_FOUND fel.
BYT NAMN PÅ TILL to_view_name
Ändrar namnet på den befintliga vyn i schema. Materialiserade views kan inte byta namn.
to_view_name anger det nya namnet på vyn. Om det
to_view_name
redan finns genereras enTableAlreadyExistsException
. Omto_view_name
är kvalificerat måste det matcha schema namn förview_name
.-
Anger eller återställer en eller flera användardefinierade egenskaper.
-
Tar bort en eller flera användardefinierade egenskaper.
-
En sökfråga som konstruerar vyn från bas tables eller annat views.
Den här satsen motsvarar en CREATE OR REPLACE VIEW-instruktion i en befintlig vy, förutom att behörigheter som beviljas för vyn bevaras.
-
Gäller för: Databricks Runtime 15.3 och senare
Anger hur efterföljande frågor i vyn anpassas till ändringar i vyns schema på grund av ändringar i de underliggande objektdefinitionerna. Se CREATE VIEW... MED SCHEMA för mer information om schema bindningslägen.
[ SET ] ÄGARE TILL huvudman
Överför ägarskapet för vyn till
principal
. Om inte vyn definieras ihive_metastore
kan du bara överföra ägarskapet till en grupp som du tillhör.Gäller för: Databricks SQL Databricks Runtime 11.3 LTS och senare
SET
tillåts som ett valfritt nyckelord.SET TAGS ( { tag_name = tag_value } [, ...] )
Använd taggar i vyn. Du måste ha
APPLY TAG
behörighet att lägga till taggar i vyn.Gäller för: Databricks SQL Databricks Runtime 13.3 LTS och senare
TA BORT TAGGAR ( tag_name [, ...] )
Remove taggar från table. Du måste ha
APPLY TAG
behörighet att remove taggar från vyn.Gäller för: Databricks SQL Databricks Runtime 13.3 LTS och senare
tag_name
En literal
STRING
.tag_name
Måste vara unikt i vyn.tag_value
En literal
STRING
.
Exempel
-- 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');