CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  MS-SQL Server >  基础类

如何实现两个异地数据库中表的联合查询?

楼主Carlroy(雨晗)2003-12-02 17:37:12 在 MS-SQL Server / 基础类 提问

比如一个为218.112.201.38   一个为211.114.135.79  
   
  上分别有pubs和pub_sub两个数据库  
   
  要对pubs中的user表和pub_sub中的user进行比较.  
   
  请问各位GGJJ改怎么办?  
  问题点数:100、回复次数:5Top

1 楼txlicenhe(马可)回复于 2003-12-02 17:40:25 得分 25

 
  /********************链接数据库   *******************************/  
   
  select   *   into   本地库名..表名   from   OPENDATASOURCE(  
                    'SQLOLEDB',  
                    'Data   Source=远程ip;User   ID=sa;Password=密码'  
                    ).库名.dbo.表名  
   
  insert   本地库名..表名   select   *   from   OPENDATASOURCE(  
                    'SQLOLEDB',  
                    'Data   Source=远程ip;User   ID=sa;Password=密码'  
                    ).库名.dbo.表名  
   
  或使用联结服务器:  
  EXEC   sp_addlinkedserver   '别名','','MSDASQL',NULL,NULL,'DRIVER={SQL   Server};SERVER=远程名;UID=用户;PWD=密码;'  
  exec   sp_addlinkedsrvlogin     @rmtsrvname='别名',@useself='false',@locallogin='sa',@rmtuser='sa',@rmtpassword='密码'  
  GO  
  然后你就可以如下:  
  select   *   from   别名.库名.dbo.表名  
  insert   库名.dbo.表名   select   *   from   别名.库名.dbo.表名  
  select   *   into   库名.dbo.新表名   from   别名.库名.dbo.表名  
  goTop

2 楼shuiniu(飞扬的梦)(我是一头只吃西红柿的水牛)回复于 2003-12-02 17:44:02 得分 25

使用联结服务器:  
  EXEC   sp_addlinkedserver   '别名','','MSDASQL',NULL,NULL,'DRIVER={SQL   Server};SERVER=远程名;UID=用户;PWD=密码;'  
  exec   sp_addlinkedsrvlogin     @rmtsrvname='别名',@useself='false',@locallogin='sa',@rmtuser='sa',@rmtpassword='密码'  
  GO  
  select   *   from   别名.pubs.dbo.[user]   a   full   join  
  pub_sub.dbo.[users]   b   on   a.user   =   b.user  
  goTop

3 楼LoveSQL(努力奋斗ing)回复于 2003-12-02 17:44:13 得分 25

建立连接服务器  
  EXEC   sp_addlinkedserver   '别名','','MSDASQL',NULL,NULL,'DRIVER={SQL   Server};SERVER=远程名;UID=用户;PWD=密码;'  
  exec   sp_addlinkedsrvlogin     @rmtsrvname='别名',@useself='false',@locallogin='sa',@rmtuser='sa',@rmtpassword='密码'  
  GO  
  然后使用  
  select     a.*   from   别名.库名.dbo.表名   a,tbl   b   where   a.field=b.field  
  Top

4 楼lvltt(未完成)回复于 2003-12-02 17:44:50 得分 25

 
  SELECT             *      
  FROM                         OPENDATASOURCE(      
                                    'SQLOLEDB',      
                                    'Data     Source=服务名;User     ID=用户;Password=密码'      
                                    ).库名.dbo.表名      
     
  ---------------------------------------------------------------      
     
  select     *     into     本地库名..表名     from     OPENDATASOURCE(      
                                    'SQLOLEDB',      
                                    'Data     Source=远程ip;User     ID=sa;Password=密码'      
                                    ).库名.dbo.表名      
     
  insert     本地库名..表名     from     OPENDATASOURCE(      
                                    'SQLOLEDB',      
                                    'Data     Source=远程ip;User     ID=sa;Password=密码'      
                                    ).库名.dbo.表名      
     
  或使用联结服务器:      
  EXEC     sp_addlinkedserver          
            '别名',          
            '',          
            'MSDASQL',      
            NULL,      
            NULL,      
            'DRIVER={SQL     Server};SERVER=远程名;UID=用户;PWD=密码;'      
  GO      
  然后你就可以如下:      
  select     *     from     别名.库名.dbo.表名      
  insert     库名.dbo.表名     select     *     from     别名..库名.dbo.表名      
  select     *     into     库名.dbo.新表名     from     别名..库名.dbo.表名      
  go      
  Top

5 楼Carlroy(雨晗)回复于 2003-12-03 16:36:10 得分 0

写错了怎么杀掉它?  
   
  能给出参数的说明么?  
   
  感谢感谢!!Top

相关问题

  • 紧急求救Access数据库中的联合查询问题!??
  • 如何进行多数据库联合查询?
  • 如何在两个数据库之间联合查询?
  • 大数据库联合表格查询,有点挑战性
  • 数据库联合查询问题(很急)
  • 数据库查询!
  • 数据库查询
  • 数据库查询~~~~
  • 数据库查询~~~~
  • 数据库查询~~~~

关键词

  • 数据库
  • 密码
  • 远程
  • sa
  • 别名
  • 表
  • 库
  • dbo
  • 表名
  • pub

得分解答快速导航

  • 帖主:Carlroy
  • txlicenhe
  • shuiniu
  • LoveSQL
  • lvltt

相关链接

  • SQL Server类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo