ALTER DATABASE

最近更新时间:2026-05-20 14:11:21

我的收藏

描述

ALTER DATABASE 语句用于更改数据库的属性或位置。请注意,DATABASESCHEMANAMESPACE 是可互换使用的,可以用其中一个替代另一个。如果在系统中找不到该数据库,将会发出错误消息。

修改数据库属性

ALTER DATABASE SET DBPROPERTIES 语句用于更改与数据库关联的属性。指定的属性值会覆盖任何具有相同属性名的现有值。此命令主要用于记录数据库的元数据,可用于审计目的。

语法

ALTER { DATABASE | SCHEMA | NAMESPACE } database_name
SET { DBPROPERTIES | PROPERTIES } ( property_name = property_value [ , ... ] )

修改数据库位置

ALTER DATABASE SET LOCATION 语句用于更改数据库中新表将被添加到的默认父目录。
注意:
请注意,它不会将数据库当前目录的内容移动到新指定的位置,也不会更改指定数据库下任何表/分区关联的位置。

语法

ALTER { DATABASE | SCHEMA | NAMESPACE } database_name
SET LOCATION 'new_location'

示例

-- 创建测试数据库
CREATE DATABASE test_alter_db_demo;

-- 设置数据库属性
ALTER DATABASE test_alter_db_demo SET DBPROPERTIES ('Edited-by' = 'John', 'Edit-date' = '01/01/2001');

-- 查看属性
DESCRIBE DATABASE EXTENDED test_alter_db_demo;

-- 使用 SCHEMA 关键字设置属性
ALTER SCHEMA test_alter_db_demo SET DBPROPERTIES ('Version' = '1.0');

-- 修改数据库位置
ALTER DATABASE test_alter_db_demo SET LOCATION 'cosn://kevin-1344200066/test_alter_db_new_location';

-- 验证新位置
DESCRIBE DATABASE EXTENDED test_alter_db_demo;