創建模式

適用於:檢查標記是的磚的SQL檢查標記是的磚運行時9.1及以後

創建一個與指定的模式(數據庫)的名字。如果一個具有相同名稱的模式已經存在,就會拋出一個異常。

語法

創建模式(如果存在]schema_name(評論schema_comment](位置schema_directory|管理位置location_path](DBPROPERTIES({property_name=property_value}(,])]

參數

  • schema_name

    要創建的模式的名稱。

  • 如果不存在

    創建一個模式的名字如果它不存在。如果一個具有相同名稱的模式已經存在,什麼也不會發生。

  • 位置schema_directory

    位置不支持在統一目錄。如果你想指定一個存儲位置的模式統一目錄,使用管理位置

    schema_directory是一個字符串文字。文件係統的路徑中指定的模式創建。如果指定的路徑不存在在底層文件係統中,創建一個目錄的路徑。如果沒有指定位置,默認的倉庫目錄中創建的模式,由靜態配置的路徑配置spark.sql.warehouse.dir

    警告

    如果一個模式(數據庫)注冊在你的工作空間層蜂巢metastore,模式使用級聯選項會導致所有文件被刪除遞歸模式位置,無論表類型(管理或外部)。

    如果模式注冊metastore統一目錄,統一的文件目錄管理表遞歸地刪除。然而,文件外部表不刪除。你必須管理這些文件直接使用雲存儲提供商。

    因此,為了避免數據意外丟失,您不應該注冊一個模式在一個蜂巢metastore位置與現有數據。你也不應該創建新的外部表在一個位置由蜂巢metastore模式或包含統一目錄管理表。

  • schema_comment

    一個字符串文字。描述模式。

  • 管理位置location_path

    管理位置是可選的,需要統一目錄。如果你想為一個模式指定一個存儲位置注冊在你的工作空間層蜂巢或第三方metastore使用位置代替。

    location_path必須是一個字符串文字。指定的路徑存儲根位置模式不同於存儲根目錄或metastore的位置。這條路必須定義在一個外部位置配置,你必須有創建管理存儲特權在外部位置配置。您可以使用路徑中定義外部位置配置或子路徑(換句話說,“gs: / /部門/金融”“gs: / /部門/金融/產品)。在集群運行數據磚磚SQL或運行時支持11.3以上。

    另請參閱管理表配置一個穀歌雲存儲桶

  • DBPROPERTIES ({property_name = property_value} […])

    模式的屬性鍵值對。

  • 選項

    設置連接類型特定的參數需要確定目錄的連接。

    • 選項

      選擇的關鍵。可以包含一個或多個的關鍵標識符由一個點或一個字符串文字。

      選擇鍵必須是唯一的,是區分大小寫的。

    • 價值

      選項的值。必須是一個值布爾,字符串,整數,或小數常數表達式。也可以調用的值秘密SQL函數。例如,價值密碼可能由秘密(“secrets.r.us”,“postgresPassword”)而不是進入文字密碼。

例子

——創建模式“customer_sc”。這與名字customer_sc拋出異常模式——已經存在。>創建模式customer_sc;——創建同名模式“customer_sc”隻有在不存在。>創建模式如果存在customer_sc;——創建同名模式“customer_sc”隻有在不存在——“評論”、“特定位置”和“數據庫屬性”。不支持統一的目錄位置。>創建模式如果存在customer_sc評論這是客戶模式”位置' / samplepath 'DBPROPERTIES(ID=001年,的名字=“約翰。”);——創建模式有不同的管理比metastore的存儲位置。隻在統一目錄管理支持的位置。>創建模式customer_sc管理位置“gs: / /部門/金融”;——驗證屬性集。>描述模式擴展customer_sc;database_description_itemdatabase_description_value- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -數據庫的名字customer_sc描述客戶模式位置hdfs:/ /使hacluster/samplepath屬性((ID,001年),(的名字,約翰))