特定のプレフィックスで始まるすべてのデータベースに対してドロップ データベース クエリをテストしています。ただし、それは恐ろしいことに簡単につながる可能性があるため、ドロップデータベースクエリを使用しています
declare @dbname nvarchar (200);
declare @query nvarchar (max);
DECLARE db_cursor CURSOR FOR
select name from sys.databases
where name like 'PREFIX%'
Open db_cursor
fetch next from db_cursor into @dbname
while @@FETCH_STATUS = 0
BEGIN
set @query = 'Drop Database ['+ @dbname + ']'
Exec(@query)
FETCH NEXT FROM db_cursor INTO @dbname
END
Close db_cursor
deallocate db_cursor
Drop Database
怖くない部分に変えたい。
主な質問ですが、どの SQL Server データベースにも常に適用できる単純な SQL クエリをそこに入れることはできますか? したがって、このクエリは、元に戻す前に、必要なデータベースにのみ影響することを知っていますDrop Database
か?
編集:さらに良いのは、データベースの名前を返すクエリです。似ていますが、このクエリが適切なデータベースに確実に影響するように、そのプレフィックスを持つデータベースの名前のみを返すようにselect name from sys.databases
動作します。['+ @dbname + ']