概述


很多时候我们需要在.NET应用程序中使用一条SQL语句来访问来自不同服务器、不同数据库中的不同的表,实现方法有很多。我们可以在.NET应用程序中建立数据访问层,使用ADO.NET Entity Framework将我们的数据库以及数据表抽象成应用程序对象,进而在程序里使用Code来对不同库当中的表进行连接或其他的操作;也可以在数据库级别使用T-SQL脚本直接对不同数据库中的表进行查询或其他操作,前一种方式在这里不做过多介绍,今天介绍一下后一种。

先介绍一下环境,我有2个数据库服务器Server_A和Server_B

Server_A(本地)

  • 数据库:AdventureWorkLT
  • 数据表:SalesLT.Customer

Server_B(远程)

  • 数据库:TailspinToys
  • 数据表:dbo.Products

使用T-SQL实现


首先我们需要使用本地数据库中的系统存储过程将远程数据库的连接字符串添加到本地数据库中

[sql] view plaincopyprint?
  1. exec sp_addlinkedserver 'Server_B','','SQLOLEDB','192.168.0.2'
  2. exec sp_addlinkedsrvlogin 'Server_B','false',null,'dbUser','dbPassword'

该命令仅执行一次即可,现在我们已经将远程的Server_B服务器添加到了本地,我们可以使用如下命令来对远程的数据表进行查询或其他的操作

[sql] view plaincopyprint?
  1. SELECT b.CustomerID,a.ProductID,b.LastName AS CustomerName,a.[Description] AS ProductName,a.Unit,a.RetailPrice
  2. FROM Server_B.TailspinToys.dbo.Products as a
  3. JOIN AdventureWorksLT.SalesLT.Customer AS b
  4. ON a.ProductID=b.CustomerID
  5. WHERE b.CustomerID>4

T-SQL - 访问远程数据库并对其数据表进行操作相关推荐

  1. (3)数据库的建立和数据表的操作

    mysql下的user表就是存放着登陆的信息,包括账号和密码 在mysql的data文件夹下建立一个数据库,并且建立新的数据表 1.use mysql  #进入mysql文件夹 2.show data ...

  2. SQL Server访问远程数据库,并把其中的一个数据库复制到本地

    一.SQL Server访问远程数据库 1.输入目标服务器的ip地址,然后输入远程服务器中SQL Server的用户名和密码 2.连接成功之后,就能找到其中的数据库和表中的信息 右键表点击设计的时候, ...

  3. 在T-SQL语句中访问远程数据库(openrowset/opendatasource/openquery)

    原文:在T-SQL语句中访问远程数据库(openrowset/opendatasource/openquery) 1.启用Ad Hoc Distributed Queries 在使用openrowse ...

  4. Oracle DBlink创建访问远程数据库

    一.使用场景 当要夸服务器访问数据库时,我们可以使用dblink建立连接服务器间的通道,本地创建了远程数据库的dblink后,访问远程服务器的库就像操作一个库一样了. 二.查看已创建的DBlink S ...

  5. 利用json+webservice实现android访问远程数据库,利用JSON+WebService实现Android访问远程数据库...

    2013年第9期SCIENCE&TECHNOLOGYINFORMATION ○IT论坛○科技信息 利用JSON+WebService实现Android访问远程数据库 黄淑静1杨红梅2 (1.山 ...

  6. 改造analysis-dynamic-synonym源码访问远程数据库

    1.改造analysis-dynamic-synonym源码访问远程数据库 以上方案还有什么不足呢? 需要新增一个java服务,链路变长,维护工作随之变大,这个该如何解决呢? 2.为了解决维护链路变长 ...

  7. win7 64位系统oracle客户端访问远程数据库

    今天将win7 64位系统oracle客户端访问远程数据库配置成功,由于我用的是64位的win7操作系统,在网上查了很多资料都说在64位系统下oracle客户端配置很复杂,于是自己亲手试了一下成功了, ...

  8. db2数据库编目mysql数据库_DB2 编目并访问远程数据库

    之后将逐步对项目上的DB2相关经验做个总结,梳理一下知识结构. 要远程操作数据库,首先要进行编目,分三个步骤: 1. 在客户端建立服务器端数据库的节点,编目远程节点. 格式如下: 1. CATALOG ...

  9. sql server跨服务器修改数据,SQL Server跨数据库服务器查询和跨表更新的详细操作...

    SQL Server数据库跨数据库服务器查询和跨表更新的相关知识是本文我们主要要介绍的内容,接下来我们就通过一个实例来介绍这一过程.实例是这样的:想实现的功能很简单, 在我的本地一个表用来保存省的信息 ...

最新文章

  1. Linux-3.14.12内存管理笔记【kmalloc与kfree实现】【转】
  2. JavaWeb黑马旅游网-学习笔记03【登陆和退出功能】
  3. unity 实现调用Windows窗口/对话框交互
  4. 还不会docker+k8s?2020年,就要面对现实了...
  5. MATLAB-电力电子技术仿-单向半波整流电路分析
  6. jquery 获取同级元素_如何在jQuery中获取元素的同级
  7. 牛批!妹子一口气拿下BAT、美团、vivo、爱奇艺等公司Offer面经总结
  8. 翻译:Swift5 使用日期类型:Date、DateFormatter、DateComponent
  9. 软件测试职业比赛,我院首届软件测试职业技能大赛圆满落幕
  10. matlab语音信号的采集与处理,基于MATLAB的语音信号的采集与处理详解
  11. 二十款免费WiFi渗透工具
  12. GAEfan qiang教程
  13. 高冷一字id_一字网名男生高冷霸气
  14. QT入门之UI设计界面
  15. UE4代理委托(代理,动态代理,单播,多播)
  16. 【每天更新】2022年最新WordPress主题下载,外贸独立站商城/企业网站/个人博客模板 2022-5-18
  17. 用SerialNumber生成流水号
  18. Memcache/Redis集群管理探索与实现:美图开源PaaS平台资源网关
  19. IP Camera 和 Web Camera 的区别
  20. 2PC与Seata简介

热门文章

  1. C语言振动排序shaker sort算法(附完整源码)
  2. C语言实现List实现(附完整源码)
  3. 封属于旋转轴密封件吗_氧化铝95瓷属于普通型的一种吗?
  4. idea未进行快捷键配置时的快捷键
  5. JS正则表达式验证数字非常全
  6. STL之红黑树容器:set,hash_set,multiset,hash_map,multimap
  7. istringstream字符串流,实现类似字符串截取的功能,字符串流中的put,str()将流转换成为字符串string
  8. Mysql 8二进制包多实例绿色解压安装Windows配置
  9. Deep Compression阅读理解及Caffe源码修改
  10. Windows下配置R-FCN