2012-03-27 114 views
0

我已经把我的tns连接放到.ora文件中,现在我可以使用SQL plus将它连接到它并且可以ping它:tnsping myConn。vb.net使用TNS名称的Oracle连接?

我还添加了连接到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

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

谢谢!

我得到的错误是:

ERROR [IM002] [微软] [ODBC驱动程序管理器]数据源名称找不到和未指定默认驱动程序

回答

0

ODBCConnection是不正确的。

解决方案:

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

你有没有检查tnsnames.ora文件?有没有tns.dev的条目?

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

+0

下面的代码是的,我做到了,这是在那里....它来正确燮当我做了昙花一现 – 2012-03-27 16:25:11

+0

是在OS上安装的oracle客户端的多个实例? – hkutluay 2012-03-27 16:29:49

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() 
相关问题