请各位高手帮忙!我现在手头只有单位SQL Server2005数据库中几个表的备份文件(.bak格式的),我怎样才能将这些备份文件导入到我家里机器上的SQL Server2005的数据库中,从而转化成本地的数据库表文件?望详细说明!谢谢!盼尽快回复!

解决方案 »

  1.   

    表的备份文件bak?是每个表生成了一个SQL脚本文件?如果是脚本本件,直接在SQL Server 2005中新建查询,执行即可。
      

  2.   

    /*将相同数据库结构的A库的全部内容复制到B库 gthlu*/declare @sql1 varchar(4000)
    declare @sql2 varchar(4000)
    declare @name varchar(40)
    declare @column varchar(40)
    declare @database varchar(40)set @database = 'bs'    --录入更新后的数据库
    create table #sql(text varchar(4000))declare objectname cursor for
    select [name] from sysobjects where type = 'u'open objectnamefetch next from objectname into @namewhile @@fetch_status = 0
      begin 
        select @sql1 = 'alter table ' +  @database + '..' +  @name + ' disable trigger all ' +  'insert into ' + @database + '..' + @name + '('
        select @sql2 = 'select '
        
        declare objectcolumn cursor for
        select name from syscolumns where object_id(@name) = id and xtype <> '189' and autoval is  null 
        open objectcolumn
        fetch next from objectcolumn into @column     while @@fetch_status = 0
          begin  select @sql1 = @sql1 + @column + ','
    select @sql2 = @sql2 + @column + ','        fetch next from objectcolumn into @column 
          end 
         close objectcolumn
         deallocate objectcolumn     select @sql1 = left(@sql1,len(@sql1) - 1) + ') '
         select @sql2 = left(@sql2,len(@sql2) - 1) + ' from ' + @name + ' alter table ' + @database + '..' + @name + ' enable trigger all'     insert into #sql select @sql1 + @sql2
         fetch next from objectname into @name
      endclose objectname
    deallocate objectnameselect * from #sqldrop table #sqlgo
    以上代码在你还原后的源数据库里运行,得到的结果,就是将你源库的数据拷贝到目标库的全部代码。