Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Oracle ODBC,64位和32位,同名_Oracle_Odbc - Fatal编程技术网

Oracle ODBC,64位和32位,同名

Oracle ODBC,64位和32位,同名,oracle,odbc,Oracle,Odbc,我们将一个用户升级到windows 10,并且在配置ODBC连接到Oracle时遇到问题 我们安装了64位和32位驱动程序。我知道32位的OBDC是syswow64,64位在system32上 我猜用户有两个相同应用程序的版本。一个版本使用64位驱动程序,另一个版本使用32位驱动程序。它们在obdc连接中使用相同的名称。当我们尝试添加32位连接时,它会覆盖64位连接。我猜是因为它的名字是一样的 有没有办法添加两个同名的odbc连接,一个是32位,另一个是64位 用户说您必须将这两个驱动程序映射到

我们将一个用户升级到windows 10,并且在配置ODBC连接到Oracle时遇到问题

我们安装了64位和32位驱动程序。我知道32位的OBDC是syswow64,64位在system32上

我猜用户有两个相同应用程序的版本。一个版本使用64位驱动程序,另一个版本使用32位驱动程序。它们在obdc连接中使用相同的名称。当我们尝试添加32位连接时,它会覆盖64位连接。我猜是因为它的名字是一样的

有没有办法添加两个同名的odbc连接,一个是32位,另一个是64位


用户说您必须将这两个驱动程序映射到一起,以及一些关于使用odac oracle安装的信息。当我安装时,我只是以管理员身份使用oracle客户端安装。oracle版本是12.2

当我遇到这个问题时,我必须设置两个版本的驱动程序并独立引用它们。我将使用“Oracle32”和“Oracle64”,然后引用应用程序调用的那个。我希望这有帮助

在早期的Oracle版本中,默认情况下,两个驱动程序的名称相同,并且Oracle_HOME是相等的,例如
OraClient11g_home1

现在,在Oracle 12或更高版本中,默认情况下该值更改为
OraClient12Home1\u 32bit
OraClient12Home1

我假设您可以简单地重命名注册表中的ODBC驱动程序,即

HKLM\SOFTWARE\WOW6432Node\ODBC\ODBCINST.INI\OraClient12Home1中的Oracle\u 32bit
将密钥重命名为OraClient12Home中的
Oracle

HKLM\SOFTWARE\WOW6432Node\ODBC\ODBCINST.INI\ODBC驱动程序\OraClient12Home1中的Oracle\u 32bit
重命名为OraClient12Home1中的
Oracle

据我所知,当您添加“用户DSN”时,DSN与平台无关,即尝试根据调用过程加载32/64位驱动程序。因此,如果再次添加相同的DSN,它将覆盖现有DSN。为了确定平台,必须添加“系统DSN”

此答案可能有助于您进行安装: