ALTER SCHEMA(外部 Schema)
功能概述
ALTER SCHEMA
ALTER SCHEMA
语句用于修改已有 schema 的属性,包括重命名、修改注释、设置属性键值对。对于外部 schema,还可以通过修改属性来更新连接配置。
语法
-- 重命名
ALTER SCHEMA schema_name RENAME TO new_name;
-- 修改注释
ALTER SCHEMA schema_name SET COMMENT 'new_comment';
-- 设置属性
ALTER SCHEMA schema_name SET PROPERTIES ( key = 'value' [, ...] );
参数说明
| 参数 | 是否必填 | 说明 |
|---|
schema_name
schema_name | 是 | 要修改的 schema 名称 |
new_name
new_name | 仅 RENAME 时 | 新的 schema 名称,在同一 workspace 下必须唯一 |
COMMENT 'new_comment'
COMMENT 'new_comment' | 否 | 新的注释内容,替换已有注释 |
PROPERTIES (key = 'value')
PROPERTIES (key = 'value') | 否 | 以键值对方式设置 schema 的自定义属性 |
使用示例
示例 1:重命名 schema
ALTER SCHEMA old_schema_name RENAME TO new_schema_name;
示例 2:修改 schema 注释
ALTER SCHEMA doc_test SET COMMENT '文档验证专用测试 schema';
执行后使用
DESC SCHEMA
DESC SCHEMA
验证:
DESC SCHEMA doc_test;
返回示例:
+--------------------+--------------------------------------+
| info_name | info_value |
+--------------------+--------------------------------------+
| name | doc_test |
| creator | qiliang |
| created_time | 2026-05-19 20:16:36.263 |
| last_modified_time | 2026-05-19 22:53:21.766 |
| comment | 文档验证专用测试 schema,可随时清理 |
| type | managed |
+--------------------+--------------------------------------+
示例 3:设置 schema 属性
ALTER SCHEMA doc_test SET PROPERTIES ('env' = 'prod', 'owner' = 'data-team');
示例 4:修改外部 schema 的连接属性
外部 schema 创建后,可通过修改
PROPERTIES
PROPERTIES
更新部分配置:
ALTER SCHEMA my_external_schema SET PROPERTIES ('description' = '映射 Hive default 数据库');
注意事项
- 外部 schema 不支持
REFRESH
REFRESH
操作,Hive Metastore 中的元数据变更(如新增表)会在查询时自动同步,无需手动刷新。
SET PROPERTIES
SET PROPERTIES
是增量更新,已有属性不会被清除,只有指定的键会被覆盖。
- 重命名 schema 后,引用该 schema 的表名、视图等不会自动更新,需要手动检查依赖。
权限要求
执行
ALTER SCHEMA
ALTER SCHEMA
的用户需要具备对应 schema 的 ALTER 权限。