數據庫更名系列(數據庫名,邏輯名,物理文件名)

彙總篇:http://www.cnblogs.com/dunitian/p/4822808.html#tsqlhtml

某系統設計的不是很合理,庫不少,圖形化操做分離都得搞半天,各類更名也就更浪費時間了,因而引入了命令~(SQLServer如今已經在Linux裏面跑了,我們也得跟上時代)sql

1.數據庫名修改前shell

alter database Test modify name=NewTest or exec sp_renamedb 'Test','NewTest'數據庫

2.數據庫名修改後ide

3.物理文件名和邏輯名並無變化spa

4.邏輯名修改先後設計

alter database NewTest modify file(name=N'Test', newname=N'NetTest')3d

5.邏輯名發生改變物理文件名不變htm

6.物理更名不少種(我這邊的本質就是分離後修改,由於佔用狀態是無法修改的)blog

其實並無什麼新的sql,都是組合版的

exec xp_cmdshell 'rename E:\SQL\Test.mdf NewTest.mdf'

效果:

SQL:

use master
go
--1.分離
exec sp_detach_db NewTest
go

--2.更名(這一步能夠換成手動更名字)
exec sp_configure 'show advanced options',1 --顯示高級選項
reconfigure with override--從新配置
	exec sp_configure 'xp_cmdshell',1 --1表明容許,0表明阻止
	reconfigure with override
		exec xp_cmdshell 'rename E:\SQL\Test.mdf NewTest.mdf'
		go
		exec xp_cmdshell 'rename E:\SQL\Test_log.ldf NewTest_log.ldf'
		go
	exec sp_configure 'xp_cmdshell',0
	reconfigure with override
exec sp_configure 'show advanced options',0
reconfigure with override

--3.附加
exec sp_attach_db NewTest,N'E:\SQL\NewTest.mdf',N'E:\SQL\NewTest_log.ldf'
相關文章
相關標籤/搜索