我正在开发一个应用程序,需要与#34;轻微记录的#34;旧版Oracle数据库。要启动该过程,我想开始使用ODBC链接创建到该数据库的视图到MS Access数据库,这样我就可以找出数据库结构,但我无法弄清楚如何设置与Oracle数据库的ODBC连接。
我已经能够使用Host和Service Name连接并使用SQL Developer查看数据库;但是,我无法弄清楚如何设置ODBC。我正在运行Windows 7并安装了Oracle 11g,Oracle Express Edition,Instant Client和ODBC扩展;但是在ODBC设置上,Oracle希望我选择一个TNS服务名称,但没有人可以选择,也没有地方可以指定主机。我试图在tnsnames.ora中设置一个TNS;但我不确定我知道该文件的正确位置。
我真的认为这将是一件容易的事;但是,它确实没有。
答案 0 :(得分:2)
导航至控制面板> 管理工具> 数据源(ODBC)
选择系统DSN 标签,然后点击“添加”。接下来,向下滚动驱动程序列表,直到找到 Microsoft ODBC for Oracle 。
在上面的表格中填写所需信息,然后单击“确定”。现在,您可以通过单击“外部数据”选项卡然后单击“更多”将表添加到“访问”。选择“ODBC数据库”,然后选择“导入源数据...”,接下来单击“机器数据源”选项卡。
答案 1 :(得分:1)
生成tnsnames.ora文件的最简单方法是让Oracle执行此操作。如果启动Oracle Net Configuration Assistant(在 Oracle主页> |配置和迁移工具| Net Configuration Assistant中启动| Oracle),您应该可以选择“本地网络服务名称配置”,它允许您添加(或修改)TNS别名。这将引导您收集您需要连接的信息。
如果您更愿意直接处理文本文件,可以使用此模板直接编辑%Oracle Home%\ network \ ADMIN \ tnsnames.ora中的tnsnames.ora文件。
<TNS alias> =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = <hostname or IP>)(PORT = <port>))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = <database service name>)
)
)
答案 2 :(得分:0)
在tnsnames.ora中,尝试将SERVICE_NAME更改为SID。这对我有用。
答案 3 :(得分:0)
我的经历 1. TNSNAMES.ORA如下。 XE = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP) (HOST = 192.168.2.116) (PORT = 1521) ) ) (CONNECT_DATA = (SERVICE_NAME = XE) ) )