当前位置: 首页 > news >正文

sqlserver新建oracle发布是咋回事,SQLServer创建链接服务器对象链接oracle

打开SQL Server Management Studio 进入Server Objects 列表,右键Linked

Servers,点击“New Linked Server...”

a4c26d1e5885305701be709a3d33442f.png

在General 界面中填写下面几项内容:

Linked server: 填写Linked Server 名称

Provider:选择Microsoft OLE DB Provider for Oracle

Product name:填写Oracle

Data source:填写上面提到的数据库别名ORADB

(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.1)(PORT=1521))(CONNECT_DATA=(SID=Service_Name)));User

Id=name;Password=pwd

a4c26d1e5885305701be709a3d33442f.png

点击Security ,点选“Be made using this security context”,假设Oracle

数据库有一个名称为admin 的用户ID,在“Remote login”中输入访问帐号,点击“OK”结束创建。

a4c26d1e5885305701be709a3d33442f.png

完成后Linked Servers 中会看到刚创建的Oracle 数据库链接。

访问Oracle

接下来就可以在SQL Server 端访问Oracle 数据库了,查询语法如下:

SELECT * FROM

LINKED_NAME..ACCOUNT_NAME.TABLE_NAME;

注:这种方访问方法,要求ACCOUNT_NAME为大写,否则查询不到。

结合上面的实例,假如要查询admin 用户下jobs 表的内容,则相应SQL 语句应为:

SELECT * FROM ORASVR..ADMIN.JOBS;

使用上述方法进行数据查询时,若Oracle 表有NUMBER 列时会出现转化错误,这时可以将NUMBER

类型转化为字符串(也有将该列属性修改成NUMBER(10),为NUMBER 列设定好位数)。考虑到View

查询等因素个人感觉还是转为字符串的方式较为通用。

当然如果查询的列过多,每个NUMBER 列都转为VARCHAR 的话工作量也的确不小,这时最好的方法就是使用OPENQUERY

函数:

SELECT * FROM OPENQUERY(LINKED_NAME,'SELECT * FROM

TABLE_NAME');

按照OPENQUERY 的语法上面SQL 语句应变为:

SELECT * FROM OPENQUERY(ORASVR,'SELECT * FROM JOBS');

这样我们就可以在SQL Server 端方便的访问Oracle 数据库,并做相应的数据调整。

相关文章:

  • linux桌面环境占用内存对比,最新精简型Linux桌面环境大比拼:LXDE Vs Xfce Vs MATE
  • dnw linux 内核,神器DNW2 FOR LINUX!
  • linux 单独装ftp服务,linux下安装FTP服务
  • linux日志服务重开,linux重新編譯內核
  • linux arm中断进程,ARM Linux对中断的处理
  • linux jvm自动退出,在Linux中启动Eclipse时出错:“ JVM已终止。退出代码= 13”
  • 远程监控linux的jboss,如何将JBoss做成Redhat Linux的系统服务
  • 火狐浏览器在linux下编译,linux下火狐浏览器插件开发.doc
  • linux vi编辑撤销,vi撤销命令(u和U),撤销上一次的操作
  • flask部署linux视频,基于python的web架构部署注意事项
  • Linux下载WordPress出现错误,解决wordpress发生意外错误,可能WordPress.org或服务器配置文件存在问题...
  • linux下github上传文件,linux下将本地文件上传到github中?
  • 具有二进制时钟的Linux,Unix Linux
  • c语言while语句里if,C语言中流程控制语句(if,switch,for,while,do-while,continue,break,return)...
  • 0809连接单片机c语言,adc0809引脚图及功能详解,adc0809与51单片机连接电路分析
  • CAP理论的例子讲解
  • Codepen 每日精选(2018-3-25)
  • django开发-定时任务的使用
  • Eureka 2.0 开源流产,真的对你影响很大吗?
  • gf框架之分页模块(五) - 自定义分页
  • IDEA常用插件整理
  • isset在php5.6-和php7.0+的一些差异
  • java正则表式的使用
  • js对象的深浅拷贝
  • Map集合、散列表、红黑树介绍
  • MYSQL如何对数据进行自动化升级--以如果某数据表存在并且某字段不存在时则执行更新操作为例...
  • oldjun 检测网站的经验
  • Puppeteer:浏览器控制器
  • React 快速上手 - 06 容器组件、展示组件、操作组件
  • 安卓应用性能调试和优化经验分享
  • 高性能JavaScript阅读简记(三)
  • 精彩代码 vue.js
  • 如何邀请好友注册您的网站(模拟百度网盘)
  • 使用common-codec进行md5加密
  • 在GitHub多个账号上使用不同的SSH的配置方法
  • 这几个编码小技巧将令你 PHP 代码更加简洁
  • MPAndroidChart 教程:Y轴 YAxis
  • 交换综合实验一
  • 如何在招聘中考核.NET架构师
  • ###项目技术发展史
  • #控制台大学课堂点名问题_课堂随机点名
  • $.ajax()参数及用法
  • ( )的作用是将计算机中的信息传送给用户,计算机应用基础 吉大15春学期《计算机应用基础》在线作业二及答案...
  • (175)FPGA门控时钟技术
  • (3)nginx 配置(nginx.conf)
  • (ISPRS,2023)深度语义-视觉对齐用于zero-shot遥感图像场景分类
  • (笔试题)合法字符串
  • (附源码)springboot金融新闻信息服务系统 毕业设计651450
  • (十八)SpringBoot之发送QQ邮件
  • (五)大数据实战——使用模板虚拟机实现hadoop集群虚拟机克隆及网络相关配置
  • (转)jQuery 基础
  • (转)创业的注意事项
  • . ./ bash dash source 这五种执行shell脚本方式 区别
  • .NET Core引入性能分析引导优化
  • .NET 简介:跨平台、开源、高性能的开发平台