exec sp_addlinkedserver  'srv_lnk','','SQLOLEDB','st1'
exec sp_addlinkedsrvlogin 'srv_lnk','false',null,'sa','stsoft'
go
--访问不同电脑上的数据库--如果经常访问或数据量大,建议用链接服务器--创建链接服务器
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('sqloled'
,'sql服务器名';'用户名';'密码'
数据库名.dbo.表名)
--导入示例
select * into 表 from openrowset('sqloled'
,'sql服务器名';'用户名';'密码'
数据库名.dbo.表名)

解决方案 »

  1.   

    这个方法不错!!!
    还有就是做个dts包,用存储过程调用,我觉得还是我的不错
      

  2.   


    我有两台(A 、B)远程SQL服务器,我写一个存储过程,在A机上。客户端向A机上调用此存储过程
    现在我想实现一个功能:
    存储过程中进行判断A机上数据是否完整, 如果不完整需要向B取数据更新A 机上的数据。 并具最后将需要数据返回给客户端调用者。这里我有一点不明白的是存储过程如何才能确定B机对A机数据已更新完毕了。
      

  3.   

    icerain:
      你好,你可以提供一个写好的程序给参考参考吗?
    谢谢
      

  4.   

    yesterday2000(一笑而过)讲的不错,但有没人成过