我一般知道如何备份一个数据库,如何还原一个数据库
但是这些都是以数据库为单位的,我现在假如不小心delete了一个表的所有数据,那么仅仅想还原这个表,而不想动其它数据(因为还原只能还原到备份的时间点,若还原整个数据库,那么备份后的那段时间的数据会丢失),这个该怎么操作呢?

解决方案 »

  1.   

    ...sql server 据我所知不支持单个表还原 这种还原方式...
      

  2.   

    那就别弄到其他位置了,放到本库里select * into tablebak from table
      

  3.   

    mysql支持单表备份,sql server不支持。
    还原以前的备份,然后把表的数据取出来。
      

  4.   

    不存在表备份的选项 因为sqlserver把表结构,表记录大致数量 索引信息存储到系统表里(以方便优化器选择优化),所以你的单表备份没有任何意义的 (这个是架构决定的)
    其实你可以采用变通的方法来备份表,比如上面说的select into
    还有通过dts/ssis工具可以方便的把表导出导入
    还有复制的方法等或者干脆备份整个库
      

  5.   

    sql Server 不支持  
      

  6.   

    select into 这个怎么操作?
    因为我只知道在同一个数据库环境中执行select into语句,
      

  7.   


    select * into tablebak from table --tablebak 这个表就你要备份的表! 删掉重建!恢复数据!
      

  8.   

    sql server 支持 复制表的功能 你可以还原一个新的库。将对应的表复制过去
      

  9.   

    sql server 复制数据库功能 中 复制 你想要的表
      

  10.   

    把备份的数据库还原到test(随便新建一个)中,然后select * into tablename from test..tablename
      

  11.   


    use aa
    go
    select * into test from test1.test
    消息 208,级别 16,状态 1,第 1 行
    对象名  'test1.test' 无效。
    这样是不行的,不能从一个新的数据库查询结果插入到当前数据库表中
      

  12.   

    我弄错了,
    select * into aa.dbo.test from test1.dbo.test这样就对了,