事情是这样的:
两个数据库,分别位于两台机器上,一台的数据全,小弟想从其中抽取一部分数据插入到 小库中。
两个库的表结构一致,甚至库名字都可以设置一样,但是位于两台不同的机器上。小弟要写一个程序实现这个行为,就是想问问有没有什么简便的方法实现这个功能?
一开始做的时候想的是从数据源库(数据全)中读取一条中的,然后插入到目标数据库(数据不全)中一条,觉得这编程起来有点麻烦。
就想起来在一个库中可以用:select * into 新表名 from 旧表名 where 字段=条件这种简便的方法可是在两台机器上,还有没有这种实现起来简便些的办法?

解决方案 »

  1.   

    select * into 新表名 from 数据库名..旧表名 where 字段=条件
      

  2.   

    --建立链接数据库,select * into 新表名 from 链接数据库.dbo.旧表名 where 字段=条件
      

  3.   

    select * into 库1.dbo.新表名 from 库2.dbo.旧表名 where 字段=条件
      

  4.   

    通过创建连接服务器可以实现跨实例的数据库访问。
    注意要开起系统的DTC服务。
    设置成功后就可以直接用你写的语句插入数据了。
      

  5.   

    最简单的方法是:
    在小库的数据库上,选择你要导入的数据库,然后右键,选择任务--导入数据,然后根据提示一步一步做即可。这样不用建立链接服务器。
    另外就是楼上几位说的:
    在小库上建立到大库的链接服务器,然后通过类似一楼的SQL代码来执行。
    第三种方法就是使用SSIS等ETL工具。
      

  6.   

    select * into 新表名 FROM   opendatasource( 'SQLOLEDB ',  'Data Source=;User ID=;Password=' ).数据库.dbo.表
      

  7.   


    select * into 新表名 FROM opendatasource( 'SQLOLEDB ', 'Data Source=;User ID=;Password=' ).数据库.dbo.表