[转贴]sqlserver连接oracle
一:sqlserver连接oracle
1.配置windows的ODBC数据源:
开始菜单—》设置—》管理工具—》数据源(ODBC)—》进入配置用户DSN或者系统DSN均可以:
添加—》选择Microsoft ODBC for oracle—》自定义数据源名称(最好跟tns中连接串同名!)—》服务器名称
(必填!填写tns文件中的连接串名称)—》完成。
2.配置sqlserver2000中的连接服务器:
企业管理器—》安全性—》连接服务器—》右键新建连接服务器—》定义连接名称;
选其他数据源; 指定程序名称为:Microsoft OLE DB Provider for oracle; 产品名称可不填;
数据源指定刚才ODBC中定义好的数据源名称; 提供程序字符串按以下格式填写:User ID=username;Password=userpasswd
(或者按如下格式:UID=username;PWD=userpasswd),
这里的用户名和密码对应所要连接的oracle数据库中的用户名和密码 —》 安全性标签页里:
设置用此安全上下文进行,并录入oracle的数据库用户名和密码—》服务器选项标签页可默认—》确定。
3.完成了。使用方法
在sqlserver企业管理器—》安全性—》连接服务器打开刚建好的连接服务器—》点击表,
即可在右边窗口看到该oracle数据库用户拥有的的所有表名,但在这里还并不能查看表的记录,这个需要在sqserver的查询分析器中用具体sql实现!
访问表时,使用格式为: [连接服务器名]..[ORACLE用户].[表名]。必须为大写。更详细具体的使用这里不再赘述。
------------------------------------------------------------------------------------------
二:oracle连接sqlserver
1、安转透明网关
在自定义安转内
D:\oracle\ora92\tg4msql\admin\inittg4msql.ora tg4msql
2、在D:\oracle\ora92\network\admin\listener.ora内添加
(SID_DESC =
(GLOBAL_DBNAME = tg4msql)
(PROGRAM = tg4msql)
(ORACLE_HOME = D:\oracle\ora92)
(SID_NAME = tg4msql)
)
3、配置tns
tnsnames.ora
-----------------
例子1
cdma =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = zhyg)(PORT = 1521))
)
(CONNECT_DATA =
(SID = tg4msql)
(SERVER = DEDICATED)
)
(HS=OK)
)
例子2
du =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = sha38)(PORT = 1521))
)
(CONNECT_DATA =
(SID = jf)
(SERVER = DEDICATED)
)
(HS=OK)
)
--------
3、创建数据链路
Create PUBLIC DATABASE LINK DU CONNECT TO SA IDENTIFIED BY SA USING 'DU'
ok可以使用了
select * from sysobjects@cdma
1.配置windows的ODBC数据源:
开始菜单—》设置—》管理工具—》数据源(ODBC)—》进入配置用户DSN或者系统DSN均可以:
添加—》选择Microsoft ODBC for oracle—》自定义数据源名称(最好跟tns中连接串同名!)—》服务器名称
(必填!填写tns文件中的连接串名称)—》完成。
2.配置sqlserver2000中的连接服务器:
企业管理器—》安全性—》连接服务器—》右键新建连接服务器—》定义连接名称;
选其他数据源; 指定程序名称为:Microsoft OLE DB Provider for oracle; 产品名称可不填;
数据源指定刚才ODBC中定义好的数据源名称; 提供程序字符串按以下格式填写:User ID=username;Password=userpasswd
(或者按如下格式:UID=username;PWD=userpasswd),
这里的用户名和密码对应所要连接的oracle数据库中的用户名和密码 —》 安全性标签页里:
设置用此安全上下文进行,并录入oracle的数据库用户名和密码—》服务器选项标签页可默认—》确定。
3.完成了。使用方法
在sqlserver企业管理器—》安全性—》连接服务器打开刚建好的连接服务器—》点击表,
即可在右边窗口看到该oracle数据库用户拥有的的所有表名,但在这里还并不能查看表的记录,这个需要在sqserver的查询分析器中用具体sql实现!
访问表时,使用格式为: [连接服务器名]..[ORACLE用户].[表名]。必须为大写。更详细具体的使用这里不再赘述。
------------------------------------------------------------------------------------------
二:oracle连接sqlserver
1、安转透明网关
在自定义安转内
D:\oracle\ora92\tg4msql\admin\inittg4msql.ora tg4msql
2、在D:\oracle\ora92\network\admin\listener.ora内添加
(SID_DESC =
(GLOBAL_DBNAME = tg4msql)
(PROGRAM = tg4msql)
(ORACLE_HOME = D:\oracle\ora92)
(SID_NAME = tg4msql)
)
3、配置tns
tnsnames.ora
-----------------
例子1
cdma =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = zhyg)(PORT = 1521))
)
(CONNECT_DATA =
(SID = tg4msql)
(SERVER = DEDICATED)
)
(HS=OK)
)
例子2
du =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = sha38)(PORT = 1521))
)
(CONNECT_DATA =
(SID = jf)
(SERVER = DEDICATED)
)
(HS=OK)
)
--------
3、创建数据链路
Create PUBLIC DATABASE LINK DU CONNECT TO SA IDENTIFIED BY SA USING 'DU'
ok可以使用了
select * from sysobjects@cdma
作者:菩提树下的杨过
出处:http://yjmyzz.cnblogs.com
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
出处:http://yjmyzz.cnblogs.com
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。