Veritabanı ismini değiştirmek

Eğer veritabanını kullanan açık herhangi bir session yoksa veritabanı üzerinde F2’ye basarak ismini değiştirebilirsiniz. Veritabanı üzerinde açık session bulunuyorsa bu session’ları aşağıdaki script yardımıyla kill edip yine F2 yöntemini kullanabilirsiniz. Script’i çalıştırdıktan sonra bütün satırları seçip çalıştırmalısınız. Ama unutmayın bu işlemi yaparak veritabanı üzerindeki tüm session’ları yok etmiş olacaksınız.

select 'kill '+CAST(spid AS varchar(50)) from sys.sysprocesses where dbid=DB_ID('Test')

Bu şekilde uğraşmak yerine aşağıdaki script ile tek seferde de veritabanı ismini değiştirmeniz mümkün. Fakat bu yöntem de veritabanındaki tüm açık session’ları kill etmektedir. Bunu dikkate almalısınız.

ALTER DATABASE Test SET SINGLE_USER WITH ROLLBACK IMMEDIATE
GO
ALTER DATABASE Test Modify Name = TestYeni
GO
ALTER DATABASE TestYeni SET MULTI_USER WITH ROLLBACK IMMEDIATE

Bir başka yöntem de sp_renamedb stored procedure’ünü kullanmak. Aşağıdaki şekilde de bu yöntemle veritabanı ismini değiştirebilirsiniz.

 

ALTER DATABASE Test SET SINGLE_USER WITH ROLLBACK IMMEDIATE
GO
Exec sp_renamedb 'Test','TestYeni'
GO
ALTER DATABASE TestYeni SET MULTI_USER WITH ROLLBACK IMMEDIATE

 

Loading

Leave Your Comment