如何从我的开发环境中的Windows 7 x64上的C#连接到Oracle数据库
在
Windows 7×64上连接到Oracle数据库时遇到困难
我的环境如下: > Windows 7×64 我将所有项目的目标CPU显式地定义为x86 CPU(而不是Any或x86) 我使用DbProviderFactory.GetFactory连接 我的app.config中的ConnectionString条目如下所示: <add name="MYORACLE" connectionString = "User ID=MYPASSWORD;Password=MYPASSWORd;Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=MYHOST)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=MYSERVICE)));" providerName="System.Data.OracleClient" /> (我尝试过各种样式的连接字符串,没有成功) 当我编译应用程序时,如果我从Debug文件夹运行可执行文件,它可以正常连接.但是,如果我尝试在Visual Studio中运行它,它将在打开连接时失败 ORA-06413: Connection not open.n 这是一个如何被调用的例子: [TestMethod] public void ConnectToOracle_Success() { var connectionStringSettings = ConnectionBuilder.GetConnectionStringSetting(OracleConnectionName); var providerFactory = ConnectionBuilder.GetProviderFactory(connectionStringSettings); ConnectionBuilder.ValidateConnectionString(connectionStringSettings); using (var connection = providerFactory.CreateConnection()) { Assert.IsNotNull(connection); connection.ConnectionString = connectionStringSettings.ConnectionString; try { connection.Open(); } catch (Exception e) { Assert.Equals(e.Message,""); } } } 我在Windows 7×64上看到与Visual Basic 6类似的东西,而Oracle不喜欢安装它的路径(即括号“程序(x86)”).这是同样的事情,还是有另一种方式来说服甲骨文的行为.
哦,Oracle提供者中可怕的括号.最简单的方法是使用更新版本的客户端,问题被修复.使用Oracle 10g数据库,您可以安全地使用高达12.1.x的客户端(可从这里获得:
64-bit Oracle Data Access Components).
使用64位操作系统,我使用了另一个技巧:首先安装32-bit版本的客户端,并安装64位版本.这样一些应用程序,如Office或旧的VS dev Web服务器仍然可以工作. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- windows – 任何人都建议一个程序一次为最终用户打印多个HT
- window.open浏览器弹出新窗口被拦截—原因分析和解决方案
- 如何拉伸ListView项目宽度以填充父容器?
- windows – 今天有没有理由在一个林中拥有多个域
- 什么是Windows的良好碎片整理工具?
- OpenCascade极简环境搭建(QT环境)
- microsoft-metro – 在Metro应用程序中可以进行Windows身份
- winapi – 是否有一组Win32 API函数来管理同步队列?
- Windows Azure数据中心位置在哪里?
- windows-server-2012 – Windows Server 2012是否支持Ready
- windows – 重定向当前IO设备以进行第三方例行交
- windows-server-2008-r2 – Windows Server 2008
- ms-access – 从Microsoft Access导出代码
- 如何在Windows上安装igraph for python
- winapi – 如何通过Win32对话框以编程方式更改标
- 如何连接到Azure Windows VM并使用PowerShell运行
- Windows 7多监视器RDC问题
- 如何在Windows上使用Paramiko的Pageant?
- windows – 有没有办法告诉机器在安全组中的持续
- 天蓝色 – 如何报告Windows Server Service Bus中