在服务器Jack创建一台名为 Bruce 的链接服务器:
USE master
EXEC sp_addlinkedserver 'Bruce',N'SQL Server'
创建一个映射,使用帐号 Sa 和密码 Password 连接到链接服务器 Bruce:
EXEC sp_addlinkedsrvlogin 'Bruce', 'false', NULL, 'Sa', 'Password'假如两表结构一样,导数据:
insert into Bruce.DBBruce.dbo.TableBruce
  select top 10 * from TableJack

解决方案 »

  1.   

    --访问不同电脑上的数据库--如果经常访问或数据量大,建议用链接服务器--创建链接服务器
    exec sp_addlinkedserver  'srv_lnk','','SQLOLEDB','远程服务器名或ip地址'
    exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'用户名','密码'
    go
    -----再用
    insert into tablebruce (col1,col2....)
    selectr top 10 col1,col2,...... srv_lnk.dbjack.dbo.tablejack
      

  2.   


    insert openrowset('sqloledb','Jack';'sa';'密码',DBJack..TableJack)
    select top 10 * from openrowset('sqloledb','Bruce';'sa';'密码',DBBruce..TableBruce)
      

  3.   

    --访问不同电脑上的数据库(远程只要联好网就一样)--如果经常访问或数据量大,建议用链接服务器--创建链接服务器
    exec sp_addlinkedserver  'srv_lnk','','SQLOLEDB','远程服务器名或ip地址'
    exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'用户名','密码'
    go--查询示例
    select * from srv_lnk.数据库名.dbo.表名--导入示例
    select * into 表 from srv_lnk.数据库名.dbo.表名go
    --处理完成后删除链接服务器
    exec sp_dropserver 'srv_lnk','droplogins'
    --如果只是临时访问,可以直接用openrowset
    --查询示例
    select * from openrowset('SQLOLEDB'
    ,'sql服务器名';'用户名';'密码'
    ,数据库名.dbo.表名)
    --导入示例
    select * into 表 from openrowset('SQLOLEDB'
    ,'sql服务器名';'用户名';'密码'
    ,数据库名.dbo.表名)