SQL Server 数据库重命名

通过将 SQL Server 数据库置于单用户模式,对其重命名

使用下列步骤在 SSMS 中使用 T-SQL 重命名 SQL Server 数据库。

1.为实例连接到 master 数据库。

2.打开一个查询窗口。

3.将以下示例复制并粘贴到查询窗口中,然后选择"执行"。 此示例将 MyTestDatabase 数据库的名称更改为 MyTestDatabaseCopy

复制代码
--连接到 master 数据库
USE master;
GO
--将数据库置于单用户模式
ALTER DATABASE MyTestDatabase SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
GO
--重命名数据库
ALTER DATABASE MyTestDatabase MODIFY NAME = MyTestDatabaseCopy;
GO
--将数据库重新置于多用户模式
ALTER DATABASE MyTestDatabaseCopy SET MULTI_USER;
GO

示例:

复制代码
USE master;
GO
ALTER DATABASE study1 SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
GO
ALTER DATABASE study1 MODIFY NAME = study2;
GO
ALTER DATABASE study2 SET MULTI_USER;
GO

警告:

为了快速获取独占访问权限,代码示例使用终止选项 WITH ROLLBACK IMMEDIATE。 这将导致所有未完成的事务被回滚,并将立刻断开 MyTestDatabase 数据库的所有其他连接。

补:如果数据库是默认数据库,可通过如下方式在重命名后重置默认数据库

如果要重命名的数据库被设置为 SQL Server 登录名的默认数据库,则可能会遇到错误 4064 Can't open user default database

可使用以下命令将默认设置更改为已重命名的数据库:

复制代码
USE [master]
GO
ALTER LOGIN [login] WITH DEFAULT_DATABASE=[new-database-name];
GO

参考:

https://learn.microsoft.com/zh-cn/SQL/relational-databases/databases/rename-a-database?view=sql-server-ver16#reset-your-default-database-after-rename

相关推荐
FAQEW5 分钟前
Redis的简单介绍
数据库·redis·缓存
十夫长6 分钟前
Redis Info 性能指标描述
数据库·redis·缓存
枫叶200039 分钟前
OceanBase数据库-学习笔记4-租户
数据库·笔记·学习·oceanbase
Tee xm1 小时前
运维仙途 第2章 日志深渊识异常
linux·运维·服务器·日志
自由鬼1 小时前
如何清理电脑数据保护个人数据隐私
运维·服务器·安全·电脑·数据隐私
jk英菲尼迪2 小时前
Windows系统安装Docker(Win10系统升级,然后安装)
运维·docker·容器
辰哥单片机设计3 小时前
LCD1602液晶显示屏详解(STM32)
数据库·mongodb
一刀到底2113 小时前
从实列中学习linux shell5: 利用shell 脚本 检测硬盘空间容量,当使用量达到80%的时候 发送邮件
linux·运维·学习
清风雅雨3 小时前
VPN访问SAP组服务器报登陆负载均衡错误88:无法连接到消息服务器(RC=9)
运维·sap
国际云,接待3 小时前
甲骨文云2025深度解析:AI驱动的云原生生态与全球化突围
运维·服务器·人工智能·云原生·性能优化·云计算·量子计算