从 2025 年 11 月 1 日起,Amazon Redshift 将不再支持创建新的 Python UDF。如果您想要使用 Python UDF,请在该日期之前创建 UDF。现有的 Python UDF 将继续正常运行。有关更多信息,请参阅博客文章
DROP DATABASE
删除数据库。
您不能在以下事务块中运行 DROP DATABASE:(BEGIN ... END)。有关事务的更多信息,请参阅 可序列化的隔离。
语法
DROP DATABASE database_name [ FORCE ]
参数
- database_name
-
要删除的数据库的名称。您不能删除 dev、padb_harvest、template0、template1 或 sys:internal 数据库,并且不能删除当前数据库。
要删除外部数据库,请删除外部架构。有关更多信息,请参阅 DROP SCHEMA。
- FORCE
-
指定了 FORCE 时,DROP DATABASE 会在删除数据库之前尝试终止活动连接。如果在超时时间内成功终止了所有活动连接,则继续执行删除操作。如果未能终止所有连接,则命令将引发错误。
DROP DATABASE 使用说明
使用 DROP DATABASE 语句时,请注意以下事项:
-
通常,我们不建议您使用 DROP DATABASE 语句删除包含 AWS Data Exchange 数据共享的数据库。如果您这样做的话,有权访问数据共享的 AWS 账户 将失去访问权限。执行这种类型的更改可能会违反 AWS Data Exchange 中的数据产品条款。
以下示例显示了删除包含 AWS Data Exchange 数据共享的数据库会出现的错误。
DROP DATABASE test_db; ERROR: Drop of database test_db that contains ADX-managed datashare(s) requires session variable datashare_break_glass_session_var to be set to value 'ce8d280c10ad41'
要允许删除数据库,请设置以下变量,然后再次运行 DROP DATABASE 语句。
SET datashare_break_glass_session_var to 'ce8d280c10ad41';
DROP DATABASE test_db;
在这种情况下,Amazon Redshift 会生成一个随机的一次性值来设置会话变量,以允许对包含 AWS Data Exchange 数据共享的数据库执行 DROP DATABASE。
示例
以下示例删除名为 TICKIT_TEST 的数据库:
drop database tickit_test;