建一个和原来同名的库,然后停掉sqlserver,再把旧的文件覆盖掉新的。启动sqlserver,大部分情况下可以恢复。

解决方案 »

  1.   

    在7.0里面覆盖似乎是不行的,在sqlserver2000里可以直接停掉数据库服务覆盖文件,也可以右键点数据库->所有任务->还原数据库.
      

  2.   

    exec sp_attach_db
    覆盖好象不可靠。
      

  3.   

    1.SQL2000中做起来很简单:
    企业管理器->...>数据库->右键,选"所有任务"->附加数据库->你的数据库文件
    2.SQL7中,可以用命令,如下:
    EXEC sp_attach_db @dbname = N'YourDb', 
       @filename1 = N'c:\Program Files\Microsoft SQL Server\MSSQL\Data\YourDB.mdf', 
       @filename2 = N'c:\Program Files\Microsoft SQL Server\MSSQL\Data\YourDB.ldf'
      

  4.   

    EXEC sp_attach_db @dbname = N'YourDb', 
                      @filename1 = N'实际路径\YourDB.mdf', 
                      @filename2 = N'实际路径\YourDB.ldf'
      

  5.   

    我试了上述的方法
    在SQL SERVER 7.0中
    事先应该不用建立数据库吧(在企业管理器中),我在查询分析器里执行了以下语句:
    EXEC sp_attach_db @dbname = N'comexam', 
      @filename1 = N'e:\SQL Server 7.0\Microsoft SQL Server\comexam_Data.mdf', 
      @filename2 = N'e:\SQL Server 7.0\Microsoft SQL Server\comexam_log.ldf'
    可是却得到这样的错误提示:
    The header for file 'e:\SQL Server 7.0\Microsoft SQL Server\comexam_Data.mdf' is not a valid database file header. The PageAudit property is incorrect.
    这是为什么呢?其中comexam是我想建立的数据库名,comexam_Data.mdf和comexam_log.ldf是我从原来的SQL SERVER中保存的文件)
      

  6.   

    老兄不知道,你现在搞定了没有?
    我有点怀疑是路径不对.
    你把两个数据文件拷贝到根目录下试试:例如C盘
    然后运行
    EXEC sp_attach_db @dbname = N'comexam', 
      @filename1 = N'C:\comexam_Data.mdf', 
      @filename2 = N'C:\comexam_log.ldf'
      

  7.   

    还是不行,依然会出现上述错误提示,我在想是不是版本的冲突,我原来的数据库是在SQL 
    SERVER 2000下的,现在装的是7.0版本,会不会是这个问题呢?
      

  8.   

    我的操作系统是WIN2000 PROFESSIONAL,可是现在买的SQL SERVER 2000版本的盘好象只能在
    WIN2000 SERVER下安装,所以我只好装7。0,难道这样就没办法了吗?
      

  9.   

    建议找一台win2000server的机子,把数据库恢复,用备份的方法生成一个完全数据库备份的文件,然后在7.0下恢复这个文件试试
      

  10.   

    你可以把文件拷到microsoftsql文件夹下,一个data 文件夹下,
    在用enterprise在数据库在点击右键,所有任务------附加数据库-----把扩展名为mdf的添加进去,就可以了
      

  11.   

    luofred(fred) 说的是在SQL SERVER 2000下的方法,可是在7。0中不行
      

  12.   

    whitedwang(笑一飞),你已经找到答案了!
    那就是SQL2000的数据库文件在SQL7中恢复不了.
      

  13.   

    可以尝试用两台计算机连网来倒,一台是2000server一台是7。0,用sql的数据导入、导出功能试一试。
      

  14.   

    hzhiguo(蝈蝈),你也试过吗 ?真的是版本的冲突吗?