2.停止SQL SERVER服务,拷贝DATA目录下的你现有数据库的MDF,LDF文件.然后更改为另外一个名字(最好和你的新数据库同名),然后用企业管理器附加,附加的时候用另外一个名字.或者用以下的代码在查询分析器中附加.示例
下面的示例将 pubs 中的两个文件附加到当前服务器。EXEC sp_attach_db @dbname = N'pubs', 
   @filename1 = N'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf', 
   @filename2 = N'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs_log.ldf'

解决方案 »

  1.   

    2.停止SQL SERVER服务,拷贝DATA目录下的你现有数据库的MDF,LDF文件.然后更改为另外一个名字(最好和你的新数据库同名),然后用企业管理器附加,附加的时候用另外一个名字.或者用以下的代码在查询分析器中附加. 
    或者是分离改数据库,然后更改MDF,LDF的名字,然后附加.示例
    下面的示例将 pubs 中的两个文件附加到当前服务器。EXEC sp_attach_db @dbname = N'pubs', 
       @filename1 = N'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf', 
       @filename2 = N'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs_log.ldf'
      

  2.   

    操作方法有以下两种
      方法1:在企业管理器中进行
      (1)在企业管理器中选定要搬家的数据库名,在其上单击鼠标右键,出现如图1所示对话框。
      (2)选中“所有任务”,在其子菜单中单击“分离数据库”。
      (3)将该数据库的数据文件和日志文件从旧的位置(如D:\MSSQL\Data)拷贝到新的位置(如E:\SQLDataNew)。
      (4)再在企业管理器中选中“数据库”文件夹,在其上单击鼠标右键,在出现的对话框中选中“所有任务”,在其子菜单中单击“附加数据库”。
      (5)在出现的“附加数据库”对话框中,选择数据库的两个文件的新位置。
      方法2:用SQL系统存储过程sp_detach_db/sp_attach_db实现
      (1)使用下面语句分离数据库:
      USE master
      GO
      EXEC sp_detach_db 'mydb'
      GO
      (2)将该数据库的数据文件和日志文件从旧的位置拷贝到新的位置。
      (3)使用下面语句重新附加数据库:
      USE master
      GO
      EXEC sp_attach_db
      'mydb', 'E:\SQLDataNew\mydbdata.mdf', 'E:\SQLDataNew\mydblog.ldf''
      GO
      

  3.   


    1,楼上的是sqlserver2000,还是2005啊,附件之前,修改数据文件名字是不行的,我试过了!
    2,用备份,然后新建一个不同名字的新数据库,然后用这个备份还原新数据库,就搞定了,但是我失败了3次,只成功了一次!概率很低啊!
      

  4.   


    新建库时不一定要同名,然后点还原,还原时如果检测到当前库的数据或日志文件路径与bak里的不一致,自己改一下就是了,将mdf和ldft路径指定为当前库的文件路径。 成功率应该是 100%
      

  5.   

    --這樣的確不行
    --按照上面的方法先附加,附加後修改名字
    EXEC sp_renamedb 'db_test', 'db_testnew'