从新配置了一遍从ORACLE(oracle817)到SQLSERVER(sqlserver2000)的访问链路,具体如下:
1、配置DSN:
数据源 ODBC 数据源名称:ODBC251
此数据源指向SQLSERVER服务。
注意:1、必须通过。
2、必须是系统数据源。
2、配置hsodbc(D:\oracle\ora81\hs\admin):
新增(可以复制inithsodbc.ora)$ORACLE_HOME\hs\admin\initHS251.ora,文件内容如下:
HS_FDS_CONNECT_INFO = ODBC251
HS_FDS_TRACE_LEVEL =OFF
注意:1、文件必须命名为 init<虚拟SID名称>.ora
2、HS_FDS_CONNECT_INFO =
3、添加监听:
修改 $ORACLE_HOME\NETWORK\ADMIN\listener.ora :
在SID_LIST 下添加新项:
(SID_DESC =
(SID_NAME = HS251)
(ORACLE_HOME = $ORACLE_HOME)
(PROGRAM = hsodbc)
)
4、重启listener:
这里要确保重起成功(一般上面做对了,这里就不会有问题)。
5、添加TNS:
修改 $ORACLE_HOME\NETWORK\ADMIN\tnsnames.ora :
SQL251 =
(DESCRIPTION=
(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))
(CONNECT_DATA=(SID=HS251))
(HS=OK)
)
注意:此处的host 配成 ODBC数据源所在的机器,而不是所指向的机器,一般为LOCALHOST
6、创建数据库连接
CREATE PUBLIC DATABASE LINK FROM_SQL CONNECT TO "sa" identified by "密码(注意大小写,sqlserver必须有密码)" using 'SQL251';
7、:
SELECT * FROM 某表@FROM_SQL;
阅读(1764) | 评论(0) | 转发(0) |