Oracle10g vb.net连接错误


Imports System.Data.OleDb
Public Class Form1
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        Dim conn As New Odbc.OdbcConnection
        Dim cmd As New Odbc.OdbcCommand
        Dim drResult As Odbc.OdbcDataReader
        Dim connString As String
        Dim QuerySQL As String
        connString = "(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = host)(PORT = 1521)))(CONNECT_DATA = (SERVICE_NAME = servicename)));Uid=user;Pwd=pwd;"
        QuerySQL = "select * from table"
        conn.ConnectionString = connString
        conn.Open()
        cmd.Connection = conn
        cmd.CommandText = QuerySQL
        drResult = cmd.ExecuteReader()
        While drResult.Read
            TextBox1.Text = TextBox1.Text & drResult("firstname") & ", " & drResult("lastname") & Environment.NewLine
        End While
        drResult.Close()
    End Sub
End Class

我正在尝试使用此代码连接到oracle,但发生错误说:

ERROR [IM002] [Microsoft][ODBC Driver Manager] Data source name not found and no default driver specified

我100%确定tsname,因为我已经在我的PHP代码中使用过它。请帮助我的家伙,我只是一个新手在vb.net。我做错了什么?你们能帮帮我吗?

update尝试此代码,但仍有错误:

 Dim myConnection As OleDbConnection
    Dim myCommand As OleDbCommand
  Dim myConnection As New OracleConnection(connStr)
            myConnection.Open()

连接字符串错误

对于OLE DB,连接字符串看起来像这样:
Provider=OraOLEDB.Oracle;Data Source=db_name;User Id=user;Password=pwd

db_name通常是您的tnsnames中的一个条目。ora文件。但是,您可以直接复制它,例如

Provider=OraOLEDB.Oracle;Data Source="(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = host)(PORT = 1521)))(CONNECT_DATA = (SERVICE_NAME = servicename)))";User Id=user;Password=pwd

对于ODBC,连接字符串看起来像这样:

Driver="Oracle in OraClient11g_home1";Uid=user;Pwd=pwd;DBQ=db_name

其他连接字符串:

  • http://www.carlprothman.net/Default.aspx?tabid=81
  • http://www.connectionstrings.com/oracle/

最新更新