SQL Server数据库损坏修复--将本数据库中的数据导出到另外一个新数据库中

  数据库损坏一般会使用一下语句修复:

==================================================
--修复数据库的某个表
--用下面的语句进行修复   
    
  exec sp_dboption   'DatabaseName',   'single user',   'true'   
  Go   
    
  DBCC CHECKTABLE('TableName',repair_allow_data_loss)   
  go   
    
  sp_dboption   'DatabaseName',   'single user',   'false'   
  Go   

-------------------------------------------------

--修复整个数据库
--用下面的语句进行修复,将DatabaseName改成修复的数据库名  
    
ALTER DATABASE [DatabaseName] SET SINGLE_USER
GO
DBCC CHECKDB('DatabaseName',repair_allow_data_loss) WITH TABLOCK
GO
ALTER DATABASE [DatabaseName] SET MULTI_USER
GO


  但上面的方法也不一定都管用,上面的语句有时候执行都不能执行成功,这样需要尝试其他方法,比如,将数据导入到一个新建的空白数据库中。

在这个导数据的过程中就会发现哪个表导不过去,哪个表有问题,可以暂时将这些表取消导入,将能顺利导入的导进去。

剩下有问题的表一般在查询分析器中用语句是打不开的,那怎么办呢,可以试试先导出到excel表格中,有些时候导入到sql的表中不行,但导入到excel可以,虽然导出的时候也会有错误提示,提示导出失败,但有时打开excel表后发现数据是在里面的,这样就可以从excel表再导入到那个新数据库中。

 

如果导出excel也不行怎么办,那就看能不能在企业管理器中打开这个表,能打开的话全选,复制粘贴到excel中,打不开就没办法了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值