彙總篇: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'