利用存储过程实现,将文件的路径及文件名作为参数传递给存储过程来实现。
在存储过程中调用命令:
restore database DatabaseName from disk='d:\BackupDB.mdf'
而DatabaseName 、'd:\BackupDB.mdf'可用参数传进来。
在存储过程中调用命令:
restore database DatabaseName from disk='d:\BackupDB.mdf'
而DatabaseName 、'd:\BackupDB.mdf'可用参数传进来。
这肯定是对的To powerxsydj(夜枫):
项目要求实现对纯DMO对象的封装,能不用SQL语句尽量不用
SQLSERVER企业管理器中都可实现对还原数据库路径的修改,没有理由DMO对象不提供啊?
SQLRestore.RelocateFiles := '[graspcw_Data],[' + DBFile + '.mdf],[graspcw_Log],' +
'['+DBFile+'.ldf]';
用RelocateFiles完成数据库文件的移动。相当于下例中的 Move [] To []
RESTORE DATABASE MyNwind
FROM MyNwind_1
WITH NORECOVERY,
MOVE 'MyNwind' TO 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\NewNwind.mdf',
MOVE 'MyNwindLog1' TO 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\NewNwind.ldf'
RESTORE LOG MyNwind
FROM MyNwindLog1
WITH RECOVERY
RelocateFiles中参数必须要成对出现,前面为逻辑文件名,后面为数据地址。
还是感谢大家的参与,散分