进行恢复SQL SERVER 数据库时,总是提示“数据库正在使用所以未能获得对数据库的排它访问权...”这是为什么? 1 你检查一下库 dbcc checkdb2 你把库设为 single user 和dbo user only 试 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你在进行数据库恢复操作的时候,不能有用户使用目标数据库,否则你将无法恢复数据库!你的程序可以连接到master库中去恢复其他的用户库 其实你自己在用啊,你先停掉SQLServer,然后再启动用Enterprise恢复数据库的话应该是没问题的,如果你想通过你的程序这个不太可行!你可以用bin下的一个执行isql.exe(记不太清是不是这个名)运行isql.exe可以看到使用帮助,如果用要恢复数据,可以用你的程序调用它执行T-sql语句!当然一样要保正SQLServer没有其它用在用(可以先停掉再启动实现,停止启动SQLServer服务这个用Delphi可以实现,调用外部程序Shellexecute...)然后restore数据库 使用 database 控件连接数据库,在恢复时先把connect 置为false 在执行恢复就行了.当然程序中使用数据库时必须都用该database 设的别名. 可能是数据库错误,用dbcc检查一下吧 这情况我前几天也碰到了,重启是没有用的。我后来在restore语句前加了句use master就ok了,测试很多次都成功了。保证只有下面这条语句执行:sql:use master; //<<<<<<<-------------restore..... 在前面加了个use master,恢复时不会提示出错,但事实上数据并没有恢复过来,这是为什么? 我也想知道我知道在sql-server里用语句的恢复,但在delphi中实现不了 dana(dana),的确如此不过,你可以做个实验。在一台机器上,先执行backup,将用户库备份为a.db,然后你把数据库中表的内容删掉,再执行restore,你看恢复没恢复?我这是成功了。我上次在一台机器上backup 成1.db,然后在另外一台机器上restore,没有得到想要的结果。然而,我在第二台机器上用“企业管理器”的还原数据库功能,得到了想要的结果。原因我也不是很清楚,好像是因为两台机器上的系统库不同造成的,我只是猜的,还请高手们指教。 dana(dana),你现在的问题多了耶,是不是得多发点分啊 如何 把一个字符串中 指定字符(数字与'.'字符) 以外的字符全部删除 后端数据库选择 找个简单的DirectX的例子 实时刷新DBGrid控件,当点击某一行时可以进行编辑并要求刷新一遍dbgrid后重新定位到该行! Delphi群,一个新生的群 idftp.put的问题!? 有谁熟悉TFlowChart的?如何给里面的图形加上hint? 请前辈们给一个例程好吗? 如何在非可视Unit单元中声明消息处理事件? 送高分,一个应用问题!!! 关于窗体的移动 如何知道我的程序使用了那些dll动态连接库
你先停掉SQLServer,然后再启动用Enterprise恢复数据库的话应该是没问题的,
如果你想通过你的程序这个不太可行!你可以用bin下的一个执行isql.exe(记不太清是不是这个名)
运行isql.exe可以看到使用帮助,如果用要恢复数据,可以用你的程序调用它执行T-sql语句!当然一样要保正SQLServer没有其它用在用(可以先停掉再启动实现,停止启动SQLServer服务这个用Delphi可以实现,调用外部程序Shellexecute...)然后restore数据库
在执行恢复就行了.当然程序中使用数据库时必须都用该database 设
的别名.
sql:
use master; //<<<<<<<-------------
restore.....
我知道在sql-server里用语句的恢复,但在delphi中实现不了
不过,你可以做个实验。在一台机器上,先执行backup,将用户库备份为a.db,然后你把数据库中表的内容删掉,再执行restore,你看恢复没恢复?我这是成功了。
我上次在一台机器上backup 成1.db,然后在另外一台机器上restore,没有得到想要的结果。然而,我在第二台机器上用“企业管理器”的还原数据库功能,得到了想要的结果。
原因我也不是很清楚,好像是因为两台机器上的系统库不同造成的,我只是猜的,还请高手们指教。