我所用的数据库是SQL SERVER数据库,在工程打开是,我就连接了服务器上的
SQL SERVER 数据库,这个时候,如果我给我所连接的数据库进行备份的时候,这个时候不关有几个人连接到了服务器上的SQL SERVER 数据库,我都可以备份,问题就出在,如果我要恢复数据库的时候,这时有几个人同时连接这个SQL SERVER 数据库,那么就我无法对被多个人同时连接的数据库进行恢复,请问这个问题该怎么解决,怎么样才可以让连接数据库的其他几个客户端暂时处于停止状态,让我可以独占数据库,这样我就可以对SQL SERVER 数据库进行恢复操作。
  希望得到各位的帮助!

解决方案 »

  1.   

    停止SQL Server
    停止SQL Server 实例可防止新连接并与当前用户断开连接.
    具體看幫助。
      

  2.   

    一个dos命令net stop mssqlserver,可以停止mssqlserver服务:)
      

  3.   

    上面的各位都搞错了,我知道要恢复数据,可以向象jiezhi()所说的
    停止SQL Server
    然后在运行SQL Server
    可是我很想知道,掉用那一个API函数可以达到这个目的
    请问用那个API函数可以停止SQL Server
    那个API函数可以运行SQL Server
    Windows自己有这样API函数吗?
    或者SQL API函数有吗?我想SQL API函数是有的,可是我找不到,帮助文档也看了
    还是没找到,那为帮我忙?解决就解贴
      

  4.   

    在dos状态下,如win2k的cmd里,分别运行:
    sql服务停止:net stop mssqlserver
    sql启动服务:net start mssqlserver========然后就......
      

  5.   

    谢谢 XXSingle(三笑留情〓★▲◆) 的回复
    可是我希望的是在我的程序里自动执行这样的方法,而不是手工是形式,如果是手工去恢复数据库的话,那这写问题就不是问题了,那我的程序不也就没有多大价值了吗?真因为我不想让操作人员手工去恢复,所以才写代码的,可是就是在恢复的时候,系统就是说我要恢复的数据库已经被占用,所以必须要去停止一下sql服务。然后启动一下就可以,可是怎么在DELPHI里写代码达到这样的目的呢?我现在写了一个存组过程,可以杀掉所有的进程,但是恢复后,连系统自己连接都断了,要必须从连,所以我觉得还是sql服务停止后,再sql启动服务的方法比较好,可是程序里怎么实现呢?
      希望可以和大家互相交流,望给位老大帮个忙?
      

  6.   

    把adoconnection指向数据库中的另外一个库,如master.然后在用
    restory database database1 from bakupdatabase
      

  7.   

    写个.bat文件,然后在程序中调用
    winexec("aa.bat",...)即可。