0

我已将我的 tns 连接放入 .ora 文件中,现在可以使用 SQL plus 连接它并且可以 ping 通它:tnsping myConn。

我还添加了到 ODBC 管理器的连接,并在通过 ODBC 工具测试连接时成功连接。

现在我在使用 vb.net 建立连接时遇到问题

我尝试了以下方法:

  oODBCConnection = New Odbc.OdbcConnection(connStr)
            oODBCConnection.Open()

我的 connStr 是:

Data Source=tns.dev;User Id=MyUser;Password=MyPass;

每: http: //www.connectionstrings.com/oraclehttp://www.shabdar.org/c-sharp/101-connect-to-oracle-using-asp-net-and-csharp.html

我究竟做错了什么?它告诉我我需要指定一个驱动程序,我该怎么做?

谢谢!

我得到的错误是:

错误 [IM002] [Microsoft][ODBC Driver Manager] 未找到数据源名称且未指定默认驱动程序

4

4 回答 4

0

你检查过 tnsnames.ora 文件吗?tns.dev 有任何条目吗?

http://www.mike-devlin.com/oracle/tnsnames_ora.htm

于 2012-03-27T16:13:21.160 回答
0

这不是 oracle 错误 - 听起来您没有创建系统 dsn。此代码看起来需要一个名为 tns.dev 的 DSN。

也就是说,如果我能提供帮助,我不会使用 odbc。您可能想查看适用于 .net 的 Oracle 数据提供程序

http://www.oracle.com/technetwork/topics/dotnet/index-085163.html

于 2012-03-27T16:35:46.840 回答
0

ODBCConnection 不正确。

解决方案:

 Dim myConnection As OleDbConnection
    Dim myCommand As OleDbCommand
  Dim myConnection As New OracleConnection(connStr)
            myConnection.Open()
于 2012-03-28T14:52:00.807 回答
0

我一直在 Vb.net 中使用以下代码

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 = "Driver={Microsoft ODBC for Oracle};CONNECTSTRING=(DESCRIPTION=(ADDRESS=  (PROTOCOL=TCP)(HOST=ORACLEDB01)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=ORACLE_INSTANCE_NAME)));Uid=john;Pwd=mypassword;"
QuerySQL = "select first_name, last_name from employees where id = 28"

conn.ConnectionString = connString
conn.Open()
cmd.Connection = conn
cmd.CommandText = QuerySQL
drResult = cmd.ExecuteReader()

While drResult.Read
  TextBox1.Text = TextBox1.Text & drResult("last_name") & ", " & drResult("first_name") & Environment.Newline
End While
drResult.Close()
于 2013-07-26T19:51:18.263 回答