ALTER VIEW
Van toepassing op: Databricks SQL Databricks Runtime
Hiermee worden metagegevens gewijzigd die aan de weergave zijn gekoppeld. Het kan de definitie van de weergave wijzigen, de naam van een weergave wijzigen in een andere naam, de metagegevens van de weergave instellen en opheffen door de instelling in te stellen TBLPROPERTIES
.
Als de weergave in de cache is opgeslagen, worden met de opdracht gegevens in de cache van de weergave en alle afhankelijke items gewist die ernaar verwijzen. De cache van de weergave wordt vertraagd ingevuld wanneer de weergave de volgende keer wordt geopend. Met de opdracht blijven de afhankelijke items van de weergave ongewijzigd.
Syntaxis
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
}
Parameters
-
Identificeert de weergave die moet worden gewijzigd. Als de weergave niet kan worden gevonden, wordt er een TABLE_OR_VIEW_NOT_FOUND fout gegenereerd in Azure Databricks.
NAAM WIJZIGEN IN to_view_name
Wijzigt de naam van de bestaande weergave in het schema. Gerealiseerde weergaven kunnen niet worden gewijzigd.
to_view_name geeft de nieuwe naam van de weergave op. Als het
to_view_name
al bestaat, wordt er eenTableAlreadyExistsException
gegenereerd. Alsto_view_name
deze is gekwalificeerd, moet deze overeenkomen met de schemanaam vanview_name
.-
Hiermee stelt u een of meer door de gebruiker gedefinieerde eigenschappen in of stelt u deze opnieuw in.
-
Hiermee verwijdert u een of meer door de gebruiker gedefinieerde eigenschappen.
-
Een query waarmee de weergave wordt samengesteld op basistabellen of andere weergaven.
Deze component is gelijk aan een CREATE OR REPLACE VIEW-instructie voor een bestaande weergave, behalve dat de bevoegdheden die voor de weergave zijn verleend, behouden blijven.
[ SET ] EIGENAAR AAN principal
Draagt het eigendom van de weergave over naar
principal
. Tenzij de weergave is gedefinieerd in dehive_metastore
weergave, mag u alleen het eigendom overdragen aan een groep waartoe u behoort.Van toepassing op: Databricks SQL Databricks Runtime 11.3 LTS en hoger
SET
is toegestaan als een optioneel trefwoord.TAGS INSTELLEN ( { tag_name = tag_value } [, ...] )
Tags toepassen op de weergave. U moet gemachtigd zijn
apply_tag
om tags toe te voegen aan de weergave.Van toepassing op: Databricks SQL Databricks Runtime 13.3 LTS en hoger
UNSET TAGS ( tag_name [, ...] )
Verwijder tags uit de tabel. U moet gemachtigd zijn
apply_tag
om tags uit de weergave te verwijderen.Van toepassing op: Databricks SQL Databricks Runtime 13.3 LTS en hoger
tag_name
Een letterlijke .
STRING
Detag_name
naam moet uniek zijn in de weergave.tag_value
Een letterlijke .
STRING
SCHEDULE [ REFRESH ] CRON cron_string [ AT TIME ZONE timezone_id ]
Hiermee kunt u een planning toevoegen aan of het schema van een gerealiseerde weergave wijzigen.
Indien opgegeven, plant u de streamingtabel of de gerealiseerde weergave om de gegevens te vernieuwen met het opgegeven kwarts cron-schema . Alleen time_zone_values worden geaccepteerd.
AT TIME ZONE LOCAL
wordt niet ondersteund. AlsAT TIME ZONE
deze afwezig is, wordt de sessietijdzone gebruikt. AlsAT TIME ZONE
deze afwezig is en de sessietijdzone niet is ingesteld, wordt er een fout gegenereerd.SCHEDULE
is semantisch gelijk aanSCHEDULE REFRESH
.U kunt de
SCHEDULE
syntaxis niet gebruiken in een pijplijndefinitie van Delta Live Tables.
Voorbeelden
-- 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');