【问题标题】:Visual Studio 2010 not connecting to OracleVisual Studio 2010 未连接到 Oracle
【发布时间】:2016-10-30 05:55:14
【问题描述】:

这是我的环境:

64 位操作系统,基于 x64 的处理器 Windows 10 企业版 视觉工作室 2010 Oracle 客户端 64 11gR2 ODAC 64k ODAC 32k

问题是我无法让 Visual Studio 2010 连接到 Oracle 11g 数据库。

从 Oracle Client 64 11gR2、ODAC 64k 和 ODAC32k 尝试了 Oracle.DataAccess.DLL,没有成功。

还尝试将 .NET framework 设置为 4 和 2,没有运气。

还尝试了 System.Data.OracleClient,它抱怨 32 位和 64 位冲突

任何帮助将不胜感激。

谢谢

导入 Oracle.DataAccess.Client 部分类 _Default 继承 System.Web.UI.Page

Protected Sub Button1_Click(sender As Object, e As System.EventArgs) Handles Button1.Click
    Dim oradb As String = "Data Source=CustomerDB;User ID=userid;Password=password"
    Dim conn As New Oracle.DataAccess.Client.OracleConnection(oradb)
    Response.Write(conn.Database.ToString())
    Response.Write(conn.State.ToString)
    conn.Open()
    Dim sql As String = "select name from customer where CustID=1"
    Dim cmd As New Oracle.DataAccess.Client.OracleCommand(sql, conn)
    Dim dr As Oracle.DataAccess.Client.OracleDataReader = cmd.ExecuteReader()
    dr.Read()
    Response.Write(dr.Item("name"))
    conn.Close()
    conn.Dispose()
End Sub

结束类

【问题讨论】:

    标签: .net visual-studio-2010 oracle11g odac


    【解决方案1】:

    Visual Studio 本身不是 64 位的。您需要安装 32 位组件才能将 Visual Studio 连接到 Oracle。

    【讨论】:

    • ODAC 32 已经安装好了,相应的已经在项目中添加了引用但是没有成功。
    • @kkazi 哦,所以是 你的 程序无法连接。好吧,我们不能说,您需要发布实际代码和错误消息。
    • 感谢@nvoigt 调查该问题。
      好的,我现在也安装了 32 位 Oracle 客户端,并将 Oracle.DataAccess.dll 复制到 Bin 文件夹中,我从该文件夹中添加了该文件作为项目中的参考。
      并且仍然在代码的第 3 行收到此错误 conn.Open()
    • System.NullReferenceException 未被用户代码处理 HResult=-2147467261 消息=对象引用未设置为对象的实例。 Source=Oracle.DataAccess StackTrace: 在 Oracle.DataAccess.Client.OracleConnection.Open() at _Default.Button1_Click(Object sender, EventArgs e) in C:\inetpub\OracleTest1\Default.aspx.vb:line 8
    • 导入 Oracle.DataAccess.Client 部分类 _Default 继承 System.Web.UI.Page Protected Sub Button1_Click(sender As Object, e As System.EventArgs) Handles Button1.Click Dim oradb As String = "Data Source=CustomerDB;User ID=userid;Password=password" Dim conn As New Oracle.DataAccess.Client.OracleConnection(oradb) conn.Open()
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-11-24
    • 1970-01-01
    • 1970-01-01
    • 2012-05-09
    • 2011-02-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多