SQL Server’da Veritabanlarının Hepsini Tek Seferde Detach Etmek

Herkese merhaba,

Bu yazıda SQL Server’da veritabanlarının hepsini tek seferde detach etmek hakkında bilgi vereceğim.

SQL Server’da bazı durumlarda veritabanlarını tek tek detach etmek yerine tek seferde detach etme ihtiyacınız olabilir.

Aşağıdaki kod yardımıyla bu işlemi rahatlıkla yapabilirsiniz. Benzer Türkçe yazılmış bir kod örneği yoktur. Alanında tektir.

DECLARE @VeriTabaniAdi VARCHAR(255);
DECLARE @SqlCumle NVARCHAR(500);
DECLARE DBCURSOR CURSOR FOR
SELECT name
FROM sys.databases
WHERE database_id > 4
      AND name NOT LIKE 'Report%';

OPEN DBCURSOR;
FETCH NEXT FROM DBCURSOR
INTO @VeriTabaniAdi;
WHILE @@FETCH_STATUS = 0
BEGIN
    SET @SqlCumle = N'EXEC sp_detach_db ' + @VeriTabaniAdi + +CHAR(13) + CHAR(10);
    SET @SqlCumle = @SqlCumle + CHAR(13) + CHAR(10);
    EXEC sp_executesql @SqlCumle;
    PRINT @VeriTabaniAdi + N' başarıyla detach edildi';
    FETCH NEXT FROM DBCURSOR
    INTO @VeriTabaniAdi;
END;

CLOSE DBCURSOR;
DEALLOCATE DBCURSOR;

Kodu çalıştırdığınızda bu veritabanının aktif bir bağlantısı var gibisinden hatalar alabilirsiniz. Çözmenin yolu, manuel olarak veritabanını aşağıdaki gibi kaldırmaktır.

SQL Server’da Veritabanlarının Hepsini Tek Seferde Detach Etmek

Task -> Detach seçilir.

SQL Server’da Veritabanlarının Hepsini Tek Seferde Detach Etmek

Bağlantı tiki işaretlenir ve OK butonuna basılır.

Tekrar kodumuza dönecek olursak. Eğer bu tarz bir hata almadıysanız yukarıdaki kodu çalıştırdığınızda aşağıdaki gibi bir sonuç göreceksiniz.

SQL Server’da Veritabanlarının Hepsini Tek Seferde Detach Etmek

Görüldüğü üzere iki veritabanımız detach edilmiş oldu. SQL Server Management Studio ekranından veritabanlarının detach edildiğini göreceksiniz.

Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.

364 Kez Okundu

Yavuz Selim Kart

Yazılım ve veri tabanında bildiklerimi anlatmaya gayret ediyorum. Halen birçok programlama dili üzerinde araştırmalar yaparak kendimi geliştiriyorum. Bunlar haricinde Grafik Tasarım ve Wordpress konularına da ilgim bulunmakta. SEO ve Sosyal medya yönetimleri hakkında da bilgim mevcuttur. Kısaca çok çalışmayı seven azimli biriyim.

You may also like...

Yazı kopyalamak yasaktır!