最近要实现一段业务,把Sqlserver数据库中表的数据作为条件在Oracle核心库中查询到相应的数据,然后再在SqlServer数据库中做统计信息.所以要实现Sqlserver数据库到Oracle的DBlink把数据从Oracle数据库中拉出来.
准备工作:
1.必须安装SqlServer数据库;
2.要有Oracle的客户端,客户端版本不低于Oracle数据库的版本;
3.配置tnsnames.ora文件(路径:$ORACLE_HOME$\db_1\NETWORK\ADMIN\tnsnames.ora)
OrclDBLink =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.2)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = ORCL.SNDA.COM)))
4.测试tns配置是否成功,使用sqlplus命名在命令行窗口登录,如果能够登录成功说明tnsname.ora配置正确.

创建连接服务器
1.在常规页面配置,如图:

2.在安全性页面配置,如图:

测试访问Oracle数据库
1.SELECT * FROM DBLINK..HR.EMPLOYEES; 此查询对象要用大写,如果查询某个字段也要使用大写,连接服务器后面是两点[..]
2.SELECT * FROM openquery(DBLINK, ‘SELECT * FROM HR.EMPLOYEES’);此方法比上一种方法快50%,此方法跟直接连Oracle的速度相当.
2.SELECT * FROM openquery(DBLINK, ‘SELECT * FROM HR.EMPLOYEES’);此方法比上一种方法快50%,此方法跟直接连Oracle的速度相当.