ALTER EXTERNAL LOCATION

适用于:勾选“是” Databricks SQL 勾选“是” Databricks Runtime 10.3 及更高版本 勾选“是” 仅 Unity Catalog

更改外部位置的属性或重命名该位置。

语法

ALTER EXTERNAL LOCATION location_name
   { RENAME TO to_location_name |
     SET URL url_str [ FORCE ] |
     SET STORAGE CREDENTIAL credential_name |
     [ SET ] OWNER TO principal }

任何包含特殊字符的对象名称(如连字符 (-))都必须用反引号 (` `) 引起来。 带下划线 (_) 的对象名称不需要反撇号。 请参阅名称示例

参数

  • location_name

    标识正在更改的外部位置。

  • RENAME TO to_location_name

    重命名位置。 该名称在元存储中的所有位置中必须是唯一的。

  • SET URL url_str [ FORCE ]

    url_str 必须是 STRING 文本,其中云存储的位置描述为绝对 URL。

    如果该位置当前正在使用,除非指定 FORCE,否则语句将失败。

  • SET STORAGE CREDENTIAL credential_name

    更新用于访问此位置的命名凭据。 如果凭据不存在,Databricks SQL 将引发错误。

  • [ SET ] OWNER TO principal

    将存储位置的所有权转让给 principal

    适用于:勾选“是” Databricks SQL SQL 仓库版本 2022.35 或更高版本 勾选“是” Databricks Runtime 11.2 及更高版本

    允许使用 SET 作为可选关键字。

示例

以下示例使用不包含特殊字符的位置名称,如连字符(-)。 任何包含特殊字符的对象名称都必须用反引号 (` `) 引起来。 请参阅名称

-- Rename a location
> ALTER EXTERNAL LOCATION descend_loc RENAME TO decent_loc;

-- Redirect the URL associated with the location
> ALTER EXTERNAL LOCATION best_loc SET URL 'abfss://container@storageaccount.dfs.core.chinacloudapi.cn/best_location' FORCE;

-- Change the credentials used to access the location
> ALTER EXTERNAL LOCATION best_loc SET STORAGE CREDENTIAL street_cred;

-- Change ownership of the external location
> ALTER EXTERNAL LOCATION best_loc OWNER TO `alf@melmak.et`