Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/318.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
C# 破译ODP.net触发的堆栈跟踪错误?_C#_Oracle_Odp.net - Fatal编程技术网

C# 破译ODP.net触发的堆栈跟踪错误?

C# 破译ODP.net触发的堆栈跟踪错误?,c#,oracle,odp.net,C#,Oracle,Odp.net,我正在使用ODP.net连接到Oracle架构,并不断触发以下错误跟踪: ORA-6413: Connection not open. at Oracle.DataAccess.Client.OracleException.HandleErrorHelper( Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object src, String pro

我正在使用ODP.net连接到Oracle架构,并不断触发以下错误跟踪:

   ORA-6413: Connection not open.
   at Oracle.DataAccess.Client.OracleException.HandleErrorHelper(
      Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, OpoSqlValCtx* pOpoSqlValCtx, Object src, String procedure)
   at Oracle.DataAccess.Client.OracleException.HandleError(
      Int32 errCode, OracleConnection conn, IntPtr opsErrCtx, Object src)
   at Oracle.DataAccess.Client.OracleConnection.Open()
我完全无法解释为什么我正在使用的应用程序无法建立连接。我对Oracle特定错误代码的理解是有限的,因此非常感谢能够分享的任何见解

我已经通过登录SQL+plus测试了登录凭据和TNS设置,这些都是正确的

我使用的连接字符串格式是:

    user id=[userid];
    password=[password];
    data source=//[machine ID]:[port]/[service name]
我正在使用OracleDataAccess.dll的10.2.0.100版本


我可以为任何敢于尝试解决这个问题的人提供更多信息。任何意见都是非常感谢的-我已经对这个问题困惑太久了

根据您的错误消息:“ORA-6413:连接未打开”。很可能您的代码只是忽略了打开数据库连接

您的代码应该如下所示:

using(OracleConnection _dbConnection = /*...setup connection object here...*/)
{
    _dbConnection.Open();
    var cmd = _dbConnection.CreateCommand();
    cmd.CommandText="some sql here";
    cmd.ExecuteReader();

    //... do "stuff" and then close your reader and connection...
}

我希望这就是问题所在-p调用.Open()函数将触发该错误。