【问题标题】:Connection String Problem Oracle .Net连接字符串问题 Oracle .Net
【发布时间】:2011-06-05 05:08:56
【问题描述】:

我是 oracle 新手,我正在尝试简单地连接到 oracle 数据库,但我不确定在哪里可以找到正确的凭据以放入连接字符串。我只是在我的机器上下载并安装了 oracle express 版本,然后安装了 .Net 参考。我的简单代码在这里:

 string oradb = "Data Source=XE;User Id=hr;Password=hr;";
            OracleConnection conn = new OracleConnection(oradb); // C#
            try
            {
                conn.Open();
                string sql = "SELECT FIRST_NAME FROM EMPLOYEES WHERE EMAIL='SKING'"; // C#
                OracleCommand cmd = new OracleCommand(sql, conn);
                cmd.CommandType = CommandType.Text;

                OracleDataReader dr = cmd.ExecuteReader(); // C#
                dr.Read();

                //label1.Text = dr["dname"].ToString(); // C# retrieve by column name
                label1.Text = dr.GetString(0).ToString();  // return a .NET data type
                //label1.Text = dr.GetOracleString(0).ToString();  // return an Oracle data type
            }
            catch (OracleException ex)
            {
                label1.Text = ex.Message;
            }
            finally
            {
                conn.Close();
            }

我收到一个 TNS:could not resolve the connect identifier specified 异常。这可能是因为我的连接字符串错误是我的猜测。我什至无法进入 Visual Studio 中的服务器资源管理器对话框并正确测试与我的 oracle db 的连接。

我需要采取哪些步骤来找出正确的凭据以插入我的连接字符串? 或者这样写…… 如果您要在您的机器上安装 oracle express,然后连接到 .Net 应用程序,您将采取哪些步骤来设置连接字符串?

【问题讨论】:

    标签: c# .net oracle


    【解决方案1】:

    也许它正在寻找在名为 XE 的 tnsnames.ora 文件中定义的数据源。

    尝试 Express 版中的 Easy Connect 命名方法。它使应用程序客户端无需使用任何配置文件即可连接到数据库,只需通过如下所示的语法指定数据源属性即可:

    user id=hr;password=hr;data source=hr-server
    user id=hr;password=hr;data source=hr-server:1521
    user id=hr;password=hr;data source=hr-server:1521/XE
    

    将 hr-server 替换为您机器的 dns 名称或 ip。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-20
      • 2019-03-10
      相关资源
      最近更新 更多