четверг, 7 февраля 2013 г.

Как удалить все базы данных из SQL Server

Сбылась мечта идиота, я теперь знаю как:


EXEC sp_MSforeachdb '
IF DB_ID(''?'') > 4
BEGIN
PRINT (''
ALTER DATABASE "?" SET SINGLE_USER WITH ROLLBACK IMMEDIATE
DROP DATABASE "?"'')
END'

Код на выходе сгенерит текст с командами SQL для удаления всех БД. Т.е. сам код ничего не удалит, хотя есть вариант и для удаления не глядя, но "чего-то я очкую, Виталик":

EXEC sp_MSforeachdb '
IF DB_ID(''?'') > 4
BEGIN
ALTER DATABASE "?" SET SINGLE_USER WITH ROLLBACK IMMEDIATE
DROP DATABASE "?"
END'

Комментариев нет: