Detaching the database seems somewhat destructive.
Try this:
BACKUP DATABASE MyDatabase
TO DISK = 'c:\mydb.bak'
RESTORE FILELISTONLY
FROM DISK = 'c:\mydb.bak'
RESTORE DATABASE MyNewDatabase
FROM DISK = 'c:\mydb.bak'
WITH MOVE 'MyDatabase' TO 'c:\myNewdb.mdf',
MOVE 'MyDatabase_log' TO 'c:\myNewdb.ldf'
You can decide after copying the database whether you want to detach & delete the original.
Main Topics
Browse All Topics





by: RonBuesingPosted on 2003-02-07 at 13:28:57ID: 7905799
I think this is what you're looking for:
--Current Database name
EXEC sp_detach_db @dbname='MyDatabase'
--Rename Physical Names
EXEC xp_cmdShell 'rename c:\MyDB.mdf MyNewDB.mdf'
EXEC xp_cmdShell 'rename c:\MyDB.ldf MyNewDB.ldf'
--New Database Name
EXEC sp_attach_db @dbname = N'MyNewDB',
@filename1 = N'c:\MyNewDB.mdf',
@filename2 = N'c:\MyNewDB.ldf'