通过创建SQLServer到Oracleg的链接服务器实现异构数据库数据转换方案.docxVIP

通过创建SQLServer到Oracleg的链接服务器实现异构数据库数据转换方案.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
通过创建SQLServer到Oracleg的链接服务器实现异构数据库数据转换方案

1、新建链接服务器的方法?在图1中选中“链接服务器”,右键选择“新建链接服务器”,如图2,配置相关参数。2、配置相关参数在“常规”选项中,填写“链接服务器名称”,访问接口选中“ Microsoft OLE DB Provider for Oracle”项。其中产品名称、数据源、访问接口字符串请填写配置的Oracle客户端在本地配置的net服务名。如图3所示。在“安全性”项中,选中使用此安全上下文建立连接,填写远程登录用户和密码,即登录远程Oracle服务器的用户和密码。如图4所示。3、异构数据库访问语句格式比如我们建立了链接服务器ORADBCONN,而Oracle中在HRSOFT用户下面建立了表WEBUSER,那么我们的SQL语句就是:--清空Oracle表中的数据DELETE? FROM? ORADBCONN..HRSOFT.WEBUSER--将SQLServer中的数据写到Oracle中INSERT? into? ORADBCONN.. HRSOFT. WEBUSERSELECT * FROM WEBUSER如果报告成功,那么我们的数据就已经写入到Oracle中了。用SELECT *  FROM? ORADBCONN..HRSOFT.WEBUSER查看Oracle数据库中是否已经有数据了。4、链接服务器应用A、查询Oracle数据表方式一(这种方式,当Oracle与SQLServer的数据类型不一致时经常报错,且速度稍慢):select * from [LINK2ORACLE]..[ORACLE_USER_NAME].TABLE_NAME;  我在执行该语句经常报类似错误信息:链接服务器 LINK2ORACLE 的 OLE DB 访问接口 MSDAORA 为列提供的元数据不一致。对象 CMCC.OS2_GIS_CELL 的列 ISOPENED (编译时序号为 20)在编译时有 130 的 DBTYPE,但在运行时有 5。  B、查询Oracle数据表方式二(经试验,这种方式使用起来很顺畅,不报错,且速度几乎和在Oralce中一样快):  select * from openquery(LINK2ORACLE,select * from OracleUserName.TableName)  您可以把openquery()当成表来使用。  C、举个例子(将Oralce用户HRSOFT下的用户表WEBUSER导入到SQLServer2005数据库中):  select * into OS_GIS_WEBUSER from openquery(LINK2ORACLE,select * from HRSOFT. WEBUSER)  D、更便捷的方式:通过创建同义词进行便捷查询:  CREATE SYNONYM OS_GIS_CELL FOR [ORACLELK]..[CMCC].OS_GIS_CELL;  select * from os_gis_cell;  select * from os_gis_cell a where a.CellName is null;注意:涉及 Oracle 部分的 SQL 语句,尤其是 [ORACLELINK]..[ORACLE_USER_NAME].TABLE_NAME 一定要大写,否则会报类似错误:消息 7314,级别 16,状态 1,第 1 行链接服务器 ORACLELK 的 OLE DB 访问接口 MSDAORA 不包含表 CMCC.OS2_gis_CELL。该表不存在,或者当前用户没有访问该表的权限。配置數據源:工程INPLAN:(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.2.6)(PORT=1521)))(CONNECT_DATA=(SID=sa)(SERVER=DEDICATED)))ERP:(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL = TCP)(HOST = 192.168.3.25)(PORT = 1528)))(CONNECT_DATA =(SID= TJTEST)))? (DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL = TCP)(HOST = 192.168.3.25)(PORT = 1528)))(CONNECT_DATA =(SID= TJTEST)))新建作業里的代碼:delete? from XBLD_InformationINSERT INTO? XBLD_Information(job_name, num_layers, JB_PP1, JB_PC1, JB_PP2, JB_PC2, JB

文档评论(0)

phltaotao + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档