sp_renamedb (Transact-SQL)

适用于:SQL ServerAzure SQL 托管实例

更改数据库的名称。

重要

在 SQL Server的未来版本中将删除此功能。 请避免在新的开发工作中使用该功能,并着手修改当前还在使用该功能的应用程序。 请改用 ALTER DATABA标准版 MODIFY NAME。 有关详细信息,请参阅 ALTER DATABASE (Transact-SQL)

Transact-SQL 语法约定

语法

sp_renamedb [ @dbname = ] 'old_name' , [ @newname = ] 'new_name'  

参数

[ @dbname = ] 'old_name' 数据库的当前名称。 old_name为 sysname,无默认值。

[ @newname = ] 'new_name' 数据库的新名称。 new_name 必须遵循标识符的规则。 new_namesysname,无默认值。

返回代码值

0(成功)或非零数字(失败)

注解

无法重命名在活动异地副本 (replica)关系配置的 Azure SQL 数据库。

权限

需要 sysadmindbcreator 固定服务器角色的成员身份。

示例

以下示例将创建 Accounting 数据库,然后将该数据库的名称更改为 Financial。 然后,查询 sys.databases 目录视图以确认数据库的新名称。

USE master;  
GO  
CREATE DATABASE Accounting;  
GO  
EXEC sp_renamedb N'Accounting', N'Financial';  
GO  
SELECT name, database_id, modified_date  
FROM sys.databases  
WHERE name = N'Financial';  
GO  

后续步骤