Potrzebujesz przenieść plik bazy w inną lokalizację lub zmienić jego nazwę? Przy próbie realizacji tego pojawi się błąd o wykorzystywaniu danego pliku i niemożliwości zrealizowania polecenia. Konieczne jest przejście bazy w tryb offline, wtedy dopiero możemy wpływać na pliki z nią związane.
W celu zamiany plików bądź modyfikacji ich nazw możesz skorzystać z poniższego kodu:
ALTER DATABASE SALES_DB SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
GO -- wylogowanie uzytkownikow
ALTER DATABASE SALES_DB MODIFY NAME = SALES_DB_OLD;
GO -- zmiana nazwy bazy
USE [SALES_DB_OLD]
SELECT
name AS [Logical_name],
physical_name AS [physical_file_name]
FROM sys.database_files
-- sprawdzenie nazw plikow bazy
ALTER DATABASE SALES_DB_OLD SET OFFLINE
GO -- przelaczenie bazy w tryb offline, nastepnie nalezy zmienic nazwy fizycznych plikow
ALTER DATABASE SALES_DB_OLD MODIFY FILE (Name='SALES', FILENAME='D:\TEST\usr\SALES_OLD.mdf')
GO -- zmiana nazw plikow w konfiguracji bazy
ALTER DATABASE SALES_DB_OLD SET ONLINE
GO -- przelaczenie bazy w tryb online
ALTER DATABASE SALES_DB_OLD SET MULTI_USER;
GO -- umozliwienie logowania uzytkownikom