Re: Oracle client and vs studio 2003 and vb code

From: Mark D Powell <Mark.Powell_at_eds.com>
Date: Wed, 26 Mar 2008 13:59:15 -0700 (PDT)
Message-ID: <f370bc5d-e649-43e5-ab4c-fd44c1715d74@2g2000hsn.googlegroups.com>


On Mar 25, 9:50am, BookerT <ch..._at_mierbo.com> wrote:
> Hopefully, I frame this problem/question correctly.
>
> I have some code written/updated in visual studio 2003. This code when
> setup on other machines where I have installed the Oracle 9i client,
> and the Oracle 9.? odbc drivers will connect to my oracle database
> when debugging. I ported the SAME code onto a new machine, installed
> visual studio 2003, installed IIS, installed the .net frameworks 1
> thru 3, registered the .net framework but when I am going through the
> code and it attempts to open a
> connection to the database, I get the following error below and like i
> said, the same code works on other machines, with the same odbc
> drivers, so i can't remember what step or proces i am missing to make
> sure that the code knows how to recognize that the oracle client is
> installed.:
>
> Server Error in '/dev' Application.
> --------------------------------------------------------------------------------
>
> Oracle client and networking components were not found. These
> components are supplied by Oracle Corporation and are part of the
> Oracle Version 7.3.3 or later client software installation. Provider
> is unable to function until these components are installed.
> Description: An unhandled exception occurred during the execution of
> the current web request. Please review the stack trace for more
> information about the error and where it originated in the code.
>
> Exception Details: System.Data.OleDb.OleDbException: Oracle client and
> networking components were not found. These components are supplied by
> Oracle Corporation and are part of the Oracle Version 7.3.3 or later
> client software installation. Provider is unable to function until
> these components are installed.
>
> Source Error:
>
> Line 366: Shared Function OpenDatabase(ByVal gsConnectionString As
> String) As OleDbConnection
> Line 367: Dim cn As New OleDbConnection(gsConnectionString)
> Line 368: cn.Open()
> Line 369: Return cn
> Line 370: End Function
>
> Source File: C:\Inetpub\wwwroot\Dev\Global.asax.vb Line: 368
>
> Stack Trace:
>
> [OleDbException (0x80004005): Oracle client and networking components
> were not found. These components are supplied by Oracle Corporation
> and are part of the Oracle Version 7.3.3 or later client software
> installation.
>
> Provider is unable to function until these components are installed.]
> System.Data.OleDb.OleDbConnection.ProcessResults(I nt32 hr)
> System.Data.OleDb.OleDbConnection.InitializeProvid er()
> System.Data.OleDb.OleDbConnection.Open()
> GT.Global.OpenDatabase(String gsConnectionString) in C:\Inetpub
> \wwwroot
> \Dev\Global.asax.vb:368
> GT.StudentSearch.Page_Load(Object sender, EventArgs e) in C:\Inetpub
> \wwwroot\Dev\StudentSearch.aspx.vb:31
> System.Web.UI.Control.OnLoad(EventArgs e)
> System.Web.UI.Control.LoadRecursive()
> System.Web.UI.Page.ProcessRequestMain()
>
> --------------------------------------------------------------------------------
> Version Information: Microsoft .NET Framework Version:1.1.4322.2032;
> ASP.NET Version:1.1.4322.2032
>
> ************************************************** *********
>
> A snippet of the code that makes the connection is a s follows
>
> gsConnectionString = OLEDB_PROVIDER & "User ID=username;Password=" &
> DB_DEV_ADMIN_PASSWORD & ";Data Source=mdevl.domain.com"
>
> where OLEDB_PROVIDER =
>
> Public Const OLEDB_PROVIDER As String = "Provider=MSDAORA.1;"
>
> Dim cn As OleDbConnection = OpenDatabase(gsConnectionString)
>
> Shared Function OpenDatabase(ByVal gsConnectionString As String) As
> OleDbConnection
> Dim cn As New OleDbConnection(gsConnectionString)
> cn.Open()
> Return cn
> End Function
>
> Oracle Pl/SQL connects just fine. The odbc connections to mdevl are
> working just fine
>
> What gives

Based on the linked databases I have built in SQL Server to talk to Oracle ODBC uses the Oracle client to actually connect to Oracle. You must install the Oracle client on the new machine, configure tnsnames.ora, and set up your ODBC driver, which references the Oracle service/sid found in the tnsnames.ora file.

With .net this may not be an absolute requirement but I would think you would have to code a thin client connection like with java so your code would be different that what you have on the older server.

HTH -- Mark D Powell -- Received on Wed Mar 26 2008 - 15:59:15 CDT

Original text of this message