明確にするために、実際には質問ではなく、答えを探していた私のような人にはもっと助けてください。
多くのアプリケーションで一時テーブルなどが作成されていますが、テスト用SQL ServerにTeam Foundation Serverが80以上のデータベースを作成したときに驚きました。 TFSは正しくインストールされなかったし、親切に私の後にそれをクリアするために私を残しました。各データベースは、手で各データベースを削除するのではなく、命名規則を持っていたので、私は、カーソルを使用する方法を思い出し、私が今までT-SQLの最も賢明作品であることを確認何書かれています:複数のデータベースをSQL Serverにドロップする方法
CREATE TABLE #databaseNames (name varchar(100) NOT NULL, db_size varchar(50), owner varchar(50), dbid int, created date, status text, compatibility_level int);
INSERT #databaseNames
exec sp_helpdb;
DECLARE dropCur CURSOR FOR
SELECT name FROM #databaseNames WHERE name like '_database_name_%';
OPEN dropCur;
DECLARE @dbName nvarchar(100);
FETCH NEXT FROM dropCur INTO @dbName;
DECLARE @statement nvarchar(200);
WHILE @@FETCH_STATUS = 0
BEGIN
SET @statement = 'DROP DATABASE ' + @dbName;
EXEC sp_executesql @statement;
FETCH NEXT FROM dropCur INTO @dbName;
END
CLOSE dropCur;
DEALLOCATE dropCur;
DROP TABLE #databaseNames;
それはなしで行きますこのようなカーソルを使用することはおそらく本当に危険であり、非常に注意して使用すべきだと言っています。これは私にとってはうまくいっていますが、私のデータベースにはまだそれ以上のダメージはありませんでしたが、私は責任を負いません。
また、これが問題ではないので削除する必要がある場合は、わかります。ちょうど人々が見るだろうどこかにこれを投稿したかった。
それは良いかもしれないので、あなたは、あなた自身の質問に答えることを許可されています実際の質問に質問を書き直してください(あなたの特定の苦境とそれに当てはまる一般的な問題の両方に挑戦してください)。そして、スクリプトを回答として投稿してください。 –