Chỉ cần làm rõ, ths không thực sự là một câu hỏi, thêm một số trợ giúp cho những người như tôi, những người đang tìm kiếm câu trả lời.
Rất nhiều ứng dụng tạo ra các bảng tạm thời và tương tự, nhưng tôi đã rất ngạc nhiên khi Team Foundation Server tạo ra hơn 80 cơ sở dữ liệu trên máy chủ SQL thử nghiệm của tôi. TFS đã không cài đặt đúng, và vui lòng để tôi dọn dẹp sau nó. Vì mỗi cơ sở dữ liệu đã có một quy ước đặt tên, chứ không phải xóa từng cơ sở dữ liệu bằng tay, tôi nhớ cách sử dụng con trỏ và đã viết những gì tôi xem là mảnh khôn ngoan nhất của T-SQL bao giờ hết:Làm thế nào để thả nhiều cơ sở dữ liệu trong 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;
Nó đi mà không nói rằng sử dụng con trỏ như thế này có lẽ thực sự nguy hiểm, và nên được sử dụng hết sức thận trọng. Điều này làm việc cho tôi và tôi chưa thấy thêm bất kỳ thiệt hại nào cho cơ sở dữ liệu của mình, nhưng tôi từ chối: sử dụng mã này có nguy cơ của riêng bạn và sao lưu dữ liệu quan trọng của bạn trước tiên!
Ngoài ra, nếu điều này sẽ bị xóa vì nó không phải là một câu hỏi, tôi hiểu. Chỉ muốn đăng bài này ở đâu đó mọi người sẽ xem xét.
Bạn được phép để trả lời câu hỏi của riêng bạn, vì vậy nó có thể là tốt hơn để viết lại câu hỏi vào một câu hỏi thực tế (cố gắng cụm từ nó cả về tình trạng khó khăn cụ thể của bạn, và vấn đề chung nó phù hợp), sau đó đăng kịch bản như một câu trả lời. –