批量分离SQL SERVER数据库

--sp_helpdb--查看可用数据库
declare @name sysname, @sql nvarchar(4000)
DECLARE roy CURSOR
FOR
--排除不分离的数据库名
SELECT name FROM sysdatabases where name not in ('master','tempdb','pubs','Northwind','msdb','model','ReportServer','ReportServerTempDB')
open roy
FETCH NEXT FROM roy INTO @name
WHILE @@FETCH_STATUS = 0
    begin
        set @sql=N'
        EXEC sp_detach_db '+ @name+', '+ 'true'
        EXEC(@sql)
        print @name
        FETCH NEXT FROM roy INTO @name
    end
CLOSE roy
DEALLOCATE roy


posted @ 2025-03-18 13:28  来个橙子  阅读(56)  评论(0)    收藏  举报