T-sql语句修改数据库逻辑名、数据库名、物理名

时间:2022-05-16 07:26:34
--更改MSSQL数据库物理文件名Sql语句的写法
--
注意:要在活动监视器里面确保没有进程连接你要改名的数据库!!!!!!!!!!!!!!!!!!!!
--
Sql语句如下
USE master

--改逻辑名
ALTER DATABASE YQBlog MODIFY FILE(NAME='YQBlogAA',NEWNAME='YQBlog')
-- GO
ALTER DATABASE YQBlog MODIFY FILE(NAME='YQBlogAA_log',NEWNAME='YQBlog_log')
-- GO

--改数据库名
EXEC sys.sp_renamedb @dbname = 'YQBlogAA', -- sysname
@newname = 'YQBlog'
GO

--分离数据库
EXEC sp_detach_db YQBlog
GO

 --打开xp_cmdshell功能
EXEC sp_configure 'show advanced options', 1
GO
RECONFIGURE
GO
EXEC sp_configure 'xp_cmdshell', 1
GO
RECONFIGURE
GO
---- --改物理名(注意:路径中不要出现中文)
EXEC xp_cmdshell 'ren C:\Users\Administrator\Desktop\YQBlogAA.mdf YQBlog.mdf'
---- --改物理名
EXEC xp_cmdshell 'ren C:\Users\Administrator\Desktop\YQBlogAA_log.ldf YQBlog_log.ldf'
--GO
--
-- --重新附加
EXEC sp_attach_db @dbname = N'YQBlog',
@filename1 = N'C:\Users\Administrator\Desktop\YQBlog.mdf',
@filename2 = N'C:\Users\Administrator\Desktop\YQBlog_log.ldf'