sqlserver垮库查询_Oracle和SQLServer中实现跨库查询

一、在SQLServer中连接另一个SQLServer库数据

在SQL中,要想在本地库中查询另一个数据库中的数据表时,可以创建一个链接服务器:

EXEC master.dbo.sp_addlinkedserver @server = N'别名', @srvproduct=N'库名',@provider=N'SQLOLEDB', @datasrc=N'服务器地址'

EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname = N'别名', @locallogin = NULL , @useself= N'False', @rmtuser = N'用户名', @rmtpassword = N'密码'

创建完后,就可以通过“Select * from别名.库名.dbo.表名”来查询了。

或者也可以手工创建:

5a29608d179d11447be0dc9195f5550d.png

80d614d1fd9ff63ac1344c3595c4e1e2.png

二、在Oracle中连接另一个Oracle库数据

在Oracle中,其实也类似,要连接到其他库时,也需要创建一个类似这样的连接:

create database link别名  connect to 模式名(用户名) identified by "密码" using 'TNS名';

注意:这里面的TNS名就是你需要连接的另一个库的TNS名,而且是必需是在你当前连接的库的服务器端所配置的TNS名。

例如:

create public database link DBLINK

connect to username identified by mypassword

using '(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.28)(PORT = 1521))

)

(CONNECT_DATA =

(SERVICE_NAME = ftnemr)

)

)';

创建完后,我们也就可以访问了:“Select * from表名@别名”

如果使用的是PL/SQL开发工具,那么我们也可以直接在工具里创建:

e5faa4bdb8745f4d64f68dbc60365a60.png

25067bb1203805fa777e0a0d231de2c9.png

三、在SQL Server中连接Oracle数据

同样,也创建一个数据库连接即可,这时我们采用Ole DB方式连接数据库:

EXEC master.dbo.sp_addlinkedserver @server = N'别名', @srvproduct=N'库名',@provider=N'MSDAORA', @datasrc=N'TNS名'

EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname = N'别名', @locallogin = NULL , @useself= N'False', @rmtuser = N'模式名', @rmtpassword = N'密码'

注意:这里面的TNS名,是在该SQL Server器端所配置的TNS名,不是在客户端本地哦。

创建好了后,使用“select * from openquery(别名,'select * from   模式名.表名”来执行查询。

要连接到其他类型的数据库时,其实方式也类同,只要用相应的provider来连接即可。

四、在Oracle中连接SQL Server数据

在oracle中连接SQLServer也很类似,创建一个DBLink,但问题是,创建DBLink里,里面用的TNS名称都是连接到Oracle的,没有配置连接到SQL Server中的。

于是想到采用Oracle中的透明网关来实现,首先在Oracle的安装名中装上,Oracle Net Services和Oracle Transparent Gateways, 并在此项下选择Oracle Transparent Gateway for Microsoft SQL Server。

配置透明网关,编辑%ORACLE_HOME%/tg4msql/admin/init%ORACLE_SID%.ora, 该文件包含了TG for SQL Server的配置信息, 其中%ORACLE_SID%是给TG的"SID", 默认为tg4msql. 修改文件中的行HS_FDS_CONNECT_INFO="SERVER=SQL服务器地址;DATABASE=库名"。

然后创建监听器:编辑%ORACLE_HOME%/network/admin/listener.ora, 编辑对应listener的SID_LIST:

SID_LIST_LISTENER=

(SID_LIST=

(SID_DESC=

(SID_NAME=%ORACLE_SID%)

(ORACLE_HOME=oracle_home_directory)

(PROGRAM=tg4msql)

)

)

其中%ORACLE_SID%为第二布中设置的SID, 默认值为tg4msql. 修改listener.ora文件后需重启listener使修改生效.

最后就可以配置TNS名了,如果直接修改Tnsname.ora文件的话,添加的格式是:

TNS名=

(DESCRIPTION=

(ADDRESS=(PROTOCOL=TCP)(HOST=sqlserver)(PORT=1521))

(CONNECT_DATA=(SID=网关ID))

(HS=OK))

这样,TNS名后就可以创建DB Links,然后查询的方式与前面一至。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/388947.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Angular2+ typescript 项目里面用require

在typescript里面怎么使用require方法呢? const jQuery require(jquery); const fip require( fonticonpicker/fonticonpicker )( jQuery ); 如果什么都不做,直接在项目里面使用,会得到以下错误: Cannot find name require 以下…

机器学习实践三---神经网络学习

Neural Networks 在这个练习中,将实现神经网络BP算法,练习的内容是手写数字识别。Visualizing the data 这次数据还是5000个样本,每个样本是一张20*20的灰度图片fig, ax_array plt.subplots(nrows10, ncols10, figsize(6, 4))for row in range(10):fo…

Microsoft Expression Blend 2 密钥,key

Microsoft Expression Blend 2 密钥,key,序列TJ2R3-WHW22-B848T-B78YJ-HHJWJ号

ethereumjs/ethereumjs-common-3-test

查看test能够让你更好滴了解其API文档的使用 ethereumjs-common/tests/chains.js const tape require(tape) const Common require(../index.js)tape([Common]: Initialization / Chain params, function (t) {t.test(Should initialize with chain provided, function (st) …

mysql修改_mysql修改表操作

一: 修改表信息1.修改表名alter table test_a rename to sys_app;2.修改表注释alter table sys_application comment 系统信息表;二:修改字段信息1.修改字段类型和注释alter table sys_application modify column app_name varchar(20) COMMENT 应用的名…

机器学习实践四--正则化线性回归 和 偏差vs方差

这次实践的前半部分是,用水库水位的变化,来预测大坝的出水量。 给数据集拟合一条直线,可能得到一个逻辑回归拟合,但它并不能很好地拟合数据,这是高偏差(high bias)的情况,也称为“欠…

深度学习 推理 训练_使用关系推理的自我监督学习进行训练而无需标记数据

深度学习 推理 训练背景与挑战📋 (Background and challenges 📋) In a modern deep learning algorithm, the dependence on manual annotation of unlabeled data is one of the major limitations. To train a good model, usually, we have to prepa…

Android strings.xml中定义字符串显示空格

<string name"str">字 符 串</string> 其中 就表示空格。如果直接在里面键入空格&#xff0c;无论多少空格都只会显示一个。 用的XML转义字符记录如下&#xff1a; 空格&#xff1a; <string name"out_bound_submit">出 库</strin…

WCF开发入门的六个步骤

在这里我就用一个据于一个简单的场景&#xff1a;服务端为客服端提供获取客户信息的一个接口读取客户信息&#xff0c;来完成WCF开发入门的六个步骤。 1. 定义WCF服务契约 A. 项目引用节点右键添加引用。 B. 在代码文件里&#xff0c;添加以下命名空间的引…

LOJ116 有源汇有上下界最大流(上下界网络流)

考虑有源汇上下界可行流&#xff1a;由汇向源连inf边&#xff0c;那么变成无源汇图&#xff0c;按上题做法跑出可行流。此时该inf边的流量即为原图中该可行流的流量。因为可以假装把加上去的那些边的流量放回原图。 此时再从原来的源向原来的汇跑最大流。超源超汇相关的边已经流…

CentOS 7 使用 ACL 设置文件权限

Linux 系统标准的 ugo/rwx 集合并不允许为不同的用户配置不同的权限&#xff0c;所以 ACL 便被引入了进来&#xff0c;为的是为文件和目录定义更加详细的访问权限&#xff0c;而不仅仅是这些特别指定的特定权限。 ACL 可以为每个用户&#xff0c;每个组或不在文件所属组中的用…

机器学习实践五---支持向量机(SVM)

之前已经学到了很多监督学习算法&#xff0c; 今天的监督学习算法是支持向量机&#xff0c;与逻辑回归和神经网络算法相比&#xff0c;它在学习复杂的非线性方程时提供了一种更为清晰&#xff0c;更强大的方式。 Support Vector Machines SVM hypothesis Example Dataset 1…

作为微软技术.net 3.5的三大核心技术之一的WCF虽然没有WPF美丽的外观

作为微软技术.net 3.5的三大核心技术之一的WCF虽然没有WPF美丽的外观 但是它却是我们开发分布式程序的利器 但是目前关于WCF方面的资料相当稀少 希望我的这一系列文章可以帮助大家尽快入门 下面先介绍一下我的开发环境吧 操作系统&#xff1a;windows vista business版本 编译器…

服务器安装mysql_阿里云服务器上安装MySQL

关闭防火墙和selinuxCentOS7以下&#xff1a;service iptables stopsetenforce 0CentOS7.xsystemctl stop firewalldsystemctl disable firewalldsystemctl status firewalldvi /etc/selinux/config把SELINUXenforcing 改成 SELINUXdisabled一、安装依赖库yum -y install make …

在PyTorch中转换数据

In continuation of my previous post ,we will keep on deep diving into basic fundamentals of PyTorch. In this post we will discuss about ways to transform data in PyTorch.延续我以前的 发布后 &#xff0c;我们将继续深入研究PyTorch的基本原理。 在这篇文章中&a…

「网络流24题」试题库问题

传送门&#xff1a;>Here< 题意&#xff1a;有K种类型的共N道试题用来出卷子&#xff0c;要求卷子须有M道试题。已知每道题属于p种类型&#xff0c;每种类型的试题必须有且仅有k[i]道。现问出这套试卷的一种具体方案 思路分析 昨天打了一天的Dinic&#xff0c;今天又打了…

机器学习实践六---K-means聚类算法 和 主成分分析(PCA)

在这次练习中将实现K-means 聚类算法并应用它压缩图片&#xff0c;第二部分&#xff0c;将使用主成分分析算法去找到一个脸部图片的低维描述。 K-means Clustering Implementing K-means K-means算法是一种自动将相似的数据样本聚在一起的方法,K-means背后的直观是一个迭代过…

航海家软件公式全破解

水手突破 上趋势:MA(LOW,20)*1.2,color0080ff,linethick2;次上趋势:MA(LOW,20)*1.1,COLORYELLOW;次下趋势:MA(HIGH,20)*0.9,COLORWHITE;下趋势:MA(HIGH,20)*0.8,COLORGREEN,linethick2;ZD:(C-REF(C,1))/REF(C,1)*100;HDZF:(HHV(H,20)-C)/(HHV(H,20)-LLV(L,20));趋势强度:IF(C&g…

打包 压缩 命令tar zip

2019独角兽企业重金招聘Python工程师标准>>> 打包 压缩 命令tar zip tar语法 #压缩 tar -czvf ***.tar.gz tar -cjvf ***.tar.bz2 #解压缩 tar -xzvf ***.tar.gz tar -xjvf ***.tar.bz2 tar [主选项辅选项] 文件或目录 主选项是必须要有的&#xff0c;它告诉tar要做…

mysql免安装5.7.17_mysql免安装5.7.17数据库配置

首先要有 mysql-5.7.10-winx64环境: mysql-5.7.10-winx64 win10(64位)配置环境变量&#xff1a;1、把mysql-5.7.10-winx64放到D盘&#xff0c;进入D\mysql-5.7.10-winx64\bin目录&#xff0c;复制路径&#xff0c;配置环境变量&#xff0c;在path后面添加D\mysql-5.7.10-winx6…