"在一台sql server上备份的数据,无法拿到另一台sql server上恢复。"首先是要同版本的SQL才能转移数据. 
出现恢复错误的情况一般是因为2台服务器的SQL安装时的设置不同(字符集和排序规则)而引起的. 所以, 你要在安装SQL的时候, 选择相同的设置.备份/恢复是转移数据最佳的方式.

解决方案 »

  1.   

    detach database and remain the file copy on the disk and then attach database
      

  2.   

    只要是相同版本或是低版本向高版本的SQL就可以恢复,可能是你恢复的时候有些参数没有设置好,不过恢复的时候必须是相同的数据库名,同时选择force restrone overwrite exists database
      

  3.   

    我恢复的时候,错误提示是这样的:
    The database you are attempting to restore was backed up under a different Unicode locale ID(2052) or Unicode comparison style (196611) than Unicode locale ID(2052) or Unicode comparison style (196609) cuurrently running on 
    this server.
    Backup or restore operation terminating abnormally.
    看大意好像是类型不一致,备份是在nt上,恢复是在98上,但sql server 的版本是一样
    的,都是:7.00.623。
    请大家帮帮我,我应该怎么办?
      

  4.   

    按照字面上的意思是字符集ID不同,不能恢复。
    Win98上的Sql Server是DeskTop版的,而NT 上的是标准版,可能这样是不能恢复的
      

  5.   

    DeskTop版与标准版之间可以恢复.还是字符集不同的原因. 
      

  6.   

    这个问题我遇到过,已经解决,实际上各位大虾把问题复杂话了。
    不论你是否重新sql server,重要的是在你恢复是要注意恢复到的文件‘路径’
      

  7.   

        这样的问题我曾经遇到过,原因是两个sql server数据库的字符集不同,你必须在安装的时候选择自定义安装,然后在选择字符集时选择936字符集,即中文字符集。其余一样。(因为nt安装时默认CHAR936。)
        或者使用导出功能,将NT中的数据库导出到ACCESS表中,再导入到98的数据库中,如果你不想重装数据库的话。
        如果可以了,别忘了给我加分哦。
        谢谢先。
      

  8.   

    98 默认的字符集是Unicode 2052,补充一下。
    不好意思。
      

  9.   

    运行安装盘里的rebuildm.exe程序,重新建立master库,使字符集和备份的一样!注意rebuildM以后,别的数据会丢失!
      

  10.   

    duuyuu(冰河) 这些天我也碰到了你同样的问题,见:SQL SERVER导出数据老是出错?急!
    首先:你试一下用脚本导出结构,然后再恢复,应该没问题。但数据怎办?
    其次:我也认为是字符集或排序的不同。但如用rebuildm.exe以后数据就丢失了,万一...
    再次:有谁知道了,到我那个问题拿分50分!在专家门诊VC++也有我的同样的问题可一起拿49分!
      

  11.   

    对不起!我自己已经解决了问题!用bcp
      

  12.   

    yx_ndsoft(softboy):
    谢谢你的帮助,我试一下重装,可以的话马上给分!
    如果用导出到ACESS表的办法,那么存储过程怎么办?cris919(lovean):能告诉我你是怎么用好的吗?
      

  13.   

    duuyuu(冰河) 
    那天我写答案时机器说最多只能连续发三次!
    用如下方法一试!步骤如下:
    1用脚本导出结构
    2用bcp导出数据
    进入MSDOS界面
    bcp databasename..tablename out c:\filename.txt -c -C936 -Uusername -Ppassword
    3用脚本导入结构
    4用bcp导入数据
    bcp databasename..tablename in c:\filename.txt -c -C936 -Uusername -Ppassword
    注意点:一注意大小写!
    二只能用英文!如你的表为中文先改表名再操作再改回来!
    三936是指简体中文如你的不是简体中文应改成别的好象英文代码为1252。
    祝成功!