我有示例数据库,在我的asp.net项目中,我需要使用其他名称创建该数据库的副本。我想用存储过程来做这件事。
有可能吗?如果是这样,怎么样?
答案 0 :(得分:8)
实现此目的的最简单方法是备份和恢复数据库:
backup database YourDatabaseName
to disk = 'C:\Yourbackupdir\BackupFile.bak'
with copy_only;
go
然后你可以相应地进行恢复:
restore database YourNewDatabaseName
from disk = 'C:\Yourbackupdir\BackupFile.bak';
go
同样,如果它位于同一台服务器上,或者如果您没有类似的数据库文件目录结构,那么您可能需要指定MOVE
子句:
restore database YourNewDatabaseName
from disk = 'C:\Yourbackupdir\BackupFile.bak'
with
move 'YourDataFileName' to 'C:\NewLocation\DataFile1.mdf',
move 'YourLogFileName' to 'C:\NewLocation\LogFile1.ldf';
go
您可以通过运行restore filelistonly from disk = 'C:\Yourbackupdir\BackupFile.bak';
来获取文件列表。