改變觀點

適用於:檢查標記是的磚的SQL檢查標記是的磚運行時

改變與視圖相關的元數據。可以改變的定義視圖,一個視圖的名稱更改為一個不同的名稱,設置和設置視圖的元數據的設置TBLPROPERTIES

如果緩存視圖,視圖的命令清除緩存數據及其家屬,引用它。視圖的緩存會懶洋洋地訪問視圖時下次。命令視圖的家屬未離開。

語法

改變(物化]視圖view_name{重命名|TBLPROPERTIES條款|設置TBLPROPERTIES條款|alter_body|owner_to|時間表}重命名重命名to_view_namealter_body作為查詢property_key{idenitifier(]|string_literal}owner_to(]老板主要時間表{{添加|改變}時間表(刷新]CRONcron_string(時間timezone_id]|下降時間表}

參數

  • view_name

    標識被改變。如果視圖不能發現磚了TABLE_OR_VIEW_NOT_FOUND錯誤。

  • 重命名為to_view_name

    重命名現有模式中的視圖。物化視圖不能被重命名。

    to_view_name指定視圖的新名字。如果to_view_name已經存在,TableAlreadyExistsException拋出。如果to_view_name有資格必須匹配嗎模式名view_name

  • 設置TBLPROPERTIES

    集或重置一個或多個用戶定義的屬性。

  • 設置TBLPROPERTIES

    刪除一個或多個用戶定義的屬性。

  • 作為查詢

    構造的查詢視圖從基表或其他的觀點。

    這相當於一個條款創建或替換視圖聲明一個現有的視圖。

  • 組所有者主要

    轉移所有權的觀點主要。除非視圖中定義的hive_metastore你可能隻對一群你屬於過戶。

    適用於:檢查標記是的磚的SQLSQL倉庫2022.35版本或更高版本檢查標記是的磚運行時11.2及以上

    可以作為一個可選的字。

  • 日程安排(刷新)CRON cron_string(時區timezone_id)

    允許您添加一個時間表或改變一個物化視圖的時間表。

    如果提供,時間流表或物化視圖刷新與給定的數據石英cron時間表。隻有time_zone_values被接受。時間當地的不支持。如果時間不在,使用會話時區。如果時間缺席和會話時區沒有設置,則拋出一個錯誤。時間表語義上等價於時間表刷新

    你不能使用時間表語法在三角洲住表中管道的定義。

例子

——重命名隻改變視圖名稱。——視圖的源和目標模式必須是相同的。——使用合格或不合格的源和目標視圖的名稱。>改變視圖tempsc1v1重命名tempsc1v2;——驗證創建新的視圖。>描述擴展tempsc1v2;c1intc2字符串#詳細的信息數據庫tempsc1v2——設置TBLPROPERTIES之前改變視圖>描述擴展tempsc1v2;c1intc2字符串#詳細的信息數據庫tempsc1v2屬性(....)——在TBLPROPERTIES設置屬性>改變視圖tempsc1v2TBLPROPERTIES(“created.by.user”=“約翰。”,“created.date”=“01-01-2001”);——表擴展tempsc1使用的描述。v2的驗證>描述擴展tempsc1v2;c1intc2字符串#詳細的信息數據庫tempsc1v2屬性(創建通過用戶=約翰,創建日期=01- - - - - -01- - - - - -2001年,....]——刪除created.by的關鍵。用戶和創建。日期從”TBLPROPERTIES”>改變視圖tempsc1v2設置TBLPROPERTIES(創建通過用戶,創建日期);——表擴展tempsc1使用的描述。v2”來驗證更改>描述擴展tempsc1v2;c1intc2字符串#詳細的信息數據庫tempsc1v2屬性(....)——改變視圖定義>改變視圖tempsc1v2作為選擇*tempsc1v1;——使用“描述表擴展”來驗證>描述擴展tempsc1v2;c1intc2字符串#詳細的信息數據庫tempsc1v2類型視圖視圖文本選擇*tempsc1v1視圖原始文本選擇*tempsc1v1——一個視圖的所有權轉移到另一個用戶>改變視圖v1老板阿爾夫@melmak——添加一個時間表,每天刷新物化視圖午夜,在洛杉磯>改變物化視圖my_mv添加時間表CRON0 0 0 * * ?*’時間“美國/ Los_Angeles”;——改變了調度運行每15分鍾物化視圖>改變物化視圖my_mv改變時間表CRON“0 0/15 * * * ?*’;——滴物化視圖的時間表>改變物化視圖my_mv下降時間表;