【发布时间】:2014-03-18 18:59:46
【问题描述】:
我正在尝试连接到 Oracle 数据库,但是当代码正在执行该行时:
con = new OracleConnection(oradb);
它给出了这个错误。 “程序无法启动,因为您的计算机中缺少 oraons.dll。请尝试重新安装程序以解决此问题。”我已经从以下站点 http://www.oracle.com/technetwork/topics/dotnet/index-085163.html 在我的计算机上安装了 ODP for .net 并引用了 Oracle.DataAccess。
我还检查了安装的文件夹,我可以在文件夹中看到 oraons dll。代码如下:
class OracleDatabase
{
OracleConnection con;
public void ConnectToOracleDb()
{
string oradb = getConnectionString("host", 1521, "sid", "user", "pass");
try
{
con = new OracleConnection(oradb);
con.Open();
Console.WriteLine("Connected to Oracle" + con.ServerVersion);
}
catch
{
Console.WriteLine("Could not connect to FLX");
}
}
private static string getConnectionString(string databaseIP, int databasePort, string databaseSID, string databaseUN, string databasePW)
{
return string.Format(
"Data Source=(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = {0})(PORT = {1}))(CONNECT_DATA =(SID = {2})));" +
"Persist Security Info=True;User ID={3};Password={4}",
databaseIP, databasePort, databaseSID, databaseUN, databasePW
);
}
}
为什么我无法连接任何建议?
【问题讨论】:
-
如果您使用 Oracle xcopy(似乎是这种方式)安装 ODP.NET 驱动程序,请检查驱动程序目录是否已添加到 Windows 系统 PATH。如果是 Oracle xcopy,您必须手动完成。
-
刚刚检查它已经被添加了@NicholasKrasnov
-
你安装oracle客户端软件了吗?
-
我在 win server 2008 上遇到了与非托管 oracle 相同的问题,但在 win server 2008 R2 上运行良好。无论哪种情况,我的路径环境变量中都有到 oracle home 的正确路径。
标签: c# database oracle11g database-connection