将备份中的数据插入到数据库中的具体步骤

问题:删除用户数据库中的数据时,把用户数据库中的一些数据误删除了,现在需要将已删除的那些数据插入到目前用户现在正在是用的数据库中(已做好数据备份bak文件)
 
首先将备份文件还原到本地数据库,还原成功。
 
在目标表中查找到我们所需要插入的数据:
 
    SELECT * FROM  dbo.Remarks  WHERE DATEDIFF (DAYOFYEAR, CreateTime,getdate ())<90 AND tag is NULL
 
继续进行下一步操作,将所查找到的那些需要插入到数据库中的的数据添加到一个新的临时表中(以下中临时表名为:dbo.temp_remarks
 
SELECT * INTO dbo.temp_remarks FROM    dbo.Remarks WHERE DATEDIFF (DAYOFYEAR, CreateTime,getdate ())<90   AND tag is NULL
 
继续下一步操作,将操作获取到的临时表dbo.temp_remarks导出到目标数据库中的目标表中,填写相关的数据库连接参数,后面进行相关的操作完成后操作下一步
 
去用户数据库中查询我们导出的临时表的数据情况
 
SELECT * FROM dbo.temp_remarks
 
操作下一步,将临时表中的那些我们查询到的数据插入到用户数据库中的目标表中,具体操作如下:
 
 
SET IDENTITY_INSERT dbo. Remarks ON ;
 
INSERT  INTO dbo. Remarks
        ( ID ,
          [Key] ,
          Creater ,
          Remark ,
          CreateTime ,
          Color ,
          Tag ,
          RefType ,
          RefID ,
          ShortStringID ,
          Loglevel
        )
        SELECT  a .ID ,
                a.[Key] ,
                a.Creater ,
                CONVERT(NVARCHAR (MAX), a. Remark) ,
                a.CreateTime ,
                CONVERT(VARCHAR (MAX), a. Color) ,
                a.Tag ,
               a. RefType ,
                a.RefID ,
                a.ShortStringID ,
                a.Loglevel
        FROM    temp_remarks a WITH ( HOLDLOCK TABLOCKX )
                         LEFT JOIN remarks b ON a. id=b .id
                         WHERE b .id IS NULL
                        
 
SET IDENTITY_INSERT dbo. Remarks OFF ;
 
最后一步,别忘了删除临时表哟:drop table temp_remarks 
posted @ 2016-03-26 11:04  my_paradise  阅读(700)  评论(0编辑  收藏  举报