我想把一个sql 2000下的mdf文件附加到sql 2005中,但是失败了。报错信息:
执行 Transact-SQL 语句或批处理时发生了异常。 (Microsoft.SqlServer.ConnectionInfo)------------------------------无法升级数据库,因为它是只读的,或者具有只读文件。请将数据库或文件设为可写,然后重新运行恢复操作。 (Microsoft SQL Server,错误: 3415)我要附加的mdf文件的属性并不是只读的,难道不可以从2000附加到2005吗,请教大家。

解决方案 »

  1.   

    说错,是可以附加的=。=你拷贝文件前有没有停止SQL2000服务?
      

  2.   

    如果用分离和附加,要在分离后复制它的数据文件,然后附加这些文件到SQL2005
      

  3.   


    2000的mdf文件怎么可以在2005中附加
      

  4.   

    备份还原我也试过,也失败了。
    sql 2000备份的文件是没有扩展名的,但是在sql 2005还原的时候添加源设备文件的时候只能添加扩展名为bak或trn的文件。如果我选“所有文件”,把2000下的备份文件添加进去,点确定的时候还是出错。
    sql 2005不是向下兼容的吗
      

  5.   


    直接附加,我实验过,难道是因为我把SQL2000和SQL2005装成一个实例的关系?
      

  6.   


    SQL2000备份的时候可以选择备份扩展名=。=我也恢复成功了
      

  7.   

    用虚拟机又做了一次,SQL2000的mdf可以在SQL2005上附加,是向下兼容的,但是备份的确没办法还原,有待高手解答
      

  8.   


    不是RP,是因为你没装SQL2005-_,-我同时装了SQL2000和SQL2005,用SQL2000备份出来的文件能在其他机器上的SQL2005上还原=。=
      

  9.   

    我把mdf和mdl文件拷到C:\Program Files\Microsoft SQL Server\MSSQL.2\MSSQL\Data目录下再附加就成功了。
    谢谢大家了。
      

  10.   

    2000 的mdf可以附加到2005中, 那么2005的mdf文件可以附加到2000中吗 ? 我试过 貌似不可以 
      

  11.   

    哦了,不用那么麻烦,SQL SERVER 2005用windows方式登陆就可以附加 SQL SERVER 2000分离出来的*.MDF文件