Sqlserver连接oracle进行读写数据库

项目中用到sqlserver去连接oracle,通过sqlserver可以直接操作oracle.
1、安装oracle客户端软件,并配置:

1)打开Net Manager,新增服务名:

2)选择网络协议:

3)填写主机名和端口号:

4)填写服务名:

5)下一步,进行测试:

6)测试结果:

2、设置sqlserver:
1)打开企业管理器,选择服务器对象--链接服务器

2)右键选择"新建链接服务器"

3)常规选项,填写内容。
链接服务器:定义链接名称;
服务器类型--其他数据源,指定程序名称为:Microsoft OLE DB Provider for Oracle

产品名称:Oracle(可不填);
数据源:orcl(oracle新建的服务名);
访问接口字符串:UID=username;PWD=userpasswd(或MSDAORA);

4)选择安全性:
选择使用此安全上下文进行连接,输入用户名,密码。

5)连接中可看到表和视图:

整个过程基本完成!

3、SQL的写法有两种:
a) 使用T-SQL语法:SELECT * FROM ERP.BAS_ITEM_CLASS

注意在,SQL查询分析器中输入SQL语句时注意中文的全角半角切换方式!

b) 使用PLSQL语法:
SELECT * FROM OPENQUERY(orcl,'SELECT * FROM ERP.BAS_ITEM_CLASS ')

c)第二种访问方式比第一种约快50%;第二种访问方式跟直连ORACLE的速度相当;第一种访问方式可能会导致一些意外错误,如:
该表不存在,或者当前用户没有访问该表的权限等等一些信息。

d)如果需要访问的column中使用没有精度的数据类型,这两种查询方式都可能会报错,这是ORACLE的BUG,无法修正,只能通过查询语句的特殊处理规避这一问题:
OLE DB 提供程序 'OraOLEDB.Oracle' 为列提供的元数据不一致。执行时更改了元数据信息。

转载请注明出处:

转载自http://lxfamn.cn/blog

未经允许不得转载:lxfamn » Sqlserver连接oracle进行读写数据库

赞 (0) 打赏

置顶推荐

评论 0

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏