从远程sql服务器上读数据示例

CREATE   proc  GetDataFromCenter 
-- 中心服务器名
@ServerCenter  sysname,
@ServerUser  sysname,
@ServerPwd  sysname,
-- 数据库名
@DatabaseCenter  sysname,
-- 该读取数据的机器在数据分配表中的机器号
@MaID   int
as
if   not   exists ( select  srvname  from  master.dbo.sysservers  where  srvname  =   @ServerCenter  )
-- 添加数据中心作为链接服务器
begin
exec  sp_addlinkedserver  @ServerCenter
exec  sp_addlinkedsrvlogin  @ServerCenter , ' false ' , null , @ServerUser , @ServerPwd
end
set  nocount  on
-- 如果post表存在将其删除
if   exists  ( select   *   from  dbo.sysobjects  where  id  =   object_id (N ' [dbo].[Post] ' and   OBJECTPROPERTY (id, N ' IsUserTable ' =   1 )
drop   table   [ dbo ] . [ Post ]
-- 从中心服务器读取数据到本地表post
exec ( ' select a.keywordid,a.docid,a.PositionFancy,a.CategoryFancy,a.wordpositions,a.score into dbo.post
from 
' + @ServerCenter + ' . ' + @DatabaseCenter + ' .dbo.invertedindex a, ' + @ServerCenter + ' . ' + @DatabaseCenter + ' .dbo.TermPartition b 
where a.keywordid=b.keywordid and b.MachineID=
' + @MaID + '  order by b.keywordid ' )
-- 建立索引
create   index  keywordid_idx  on  post(keywordid) 
set  nocount  off

GO

 

从远程sql服务器上读取数据,首先要添加连接服务器,然后才可以读取

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值