suresh_bansal
asked on
Makign Oracle connection on Windows 2008 64 Bit thru Vb.net using provider - msdaora.1
Hi all
We have vb.net application. That works perfectly fine on Windows 32 Bit machines including
windows xp 32 bit , windows 2003 server 32 bit , windows 2008 32 bit server
we follow as under :-
a) Install Oracle database
b) Install Dot Net Framework ver 2.0 or higher
c) We run vb.net application which builds connection with Oracle database as under
Dim adocon As New OleDb.OleDbConnection
tConnstring = "Provider=MSDAORA.1;Passwo rd=" & nPassword & ";User ID=" & nUserName
adocon.ConnectionString = tconnString
adocon.Open()
The same application does not work in Windows 64 Bit Machine 2008 Server and we get following error
MSDAORA.1 provider is not registered on the local machine
We also tested using msdaora.dll , msdaorar.dll from windows 32 bit machine into windows 64 machine in windows\system32 folder but we are not able to register these dll files using regsvr32 msdaora.dll
using provider as given by Oracle
we are able to connect to Oracle 11g with vb.net using
Provider=oraoledb.oracle.1
This provider is provided by Oracle and works well
when we use this oracle provide - Only simple report querries work but complex queries which used to work using msdaor stopped working in vb and reports errors and as such we can not
use oracle provider
Kindly advise some solution to make connection with Oracle Database. We wish to use the same provider
Suresh Bansal
We have vb.net application. That works perfectly fine on Windows 32 Bit machines including
windows xp 32 bit , windows 2003 server 32 bit , windows 2008 32 bit server
we follow as under :-
a) Install Oracle database
b) Install Dot Net Framework ver 2.0 or higher
c) We run vb.net application which builds connection with Oracle database as under
Dim adocon As New OleDb.OleDbConnection
tConnstring = "Provider=MSDAORA.1;Passwo
adocon.ConnectionString = tconnString
adocon.Open()
The same application does not work in Windows 64 Bit Machine 2008 Server and we get following error
MSDAORA.1 provider is not registered on the local machine
We also tested using msdaora.dll , msdaorar.dll from windows 32 bit machine into windows 64 machine in windows\system32 folder but we are not able to register these dll files using regsvr32 msdaora.dll
using provider as given by Oracle
we are able to connect to Oracle 11g with vb.net using
Provider=oraoledb.oracle.1
This provider is provided by Oracle and works well
when we use this oracle provide - Only simple report querries work but complex queries which used to work using msdaor stopped working in vb and reports errors and as such we can not
use oracle provider
Kindly advise some solution to make connection with Oracle Database. We wish to use the same provider
Suresh Bansal
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
If you install the 64-bit client working for latest oracle it should work against previous versions of oracle DB too. It is just tjat an older version does not work with the newer DBs and OSes.
It will still just be one provider, but you need install the client libraries on server , app servers, eventually clients and so on.
But the provider will be oracle instead of Microsoft.
http://www.oracle.com/technetwork/topics/dotnet/whatsnew/index.html
This will give you all information you need to code and make connection and connection strings with the new client.
I not really sure how far backward compatibility the libraries are from .net , but with SQLPLUS you can connect form 11g to both 10g and 9i at least so it should be same for .net connections.
I not a programmer only DBA so I can't say exactly how to make connection string , vut this link with example code and tutorials from Oracle should point you in the right direction.
Regards
It will still just be one provider, but you need install the client libraries on server , app servers, eventually clients and so on.
But the provider will be oracle instead of Microsoft.
http://www.oracle.com/technetwork/topics/dotnet/whatsnew/index.html
This will give you all information you need to code and make connection and connection strings with the new client.
I not really sure how far backward compatibility the libraries are from .net , but with SQLPLUS you can connect form 11g to both 10g and 9i at least so it should be same for .net connections.
I not a programmer only DBA so I can't say exactly how to make connection string , vut this link with example code and tutorials from Oracle should point you in the right direction.
Regards
SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
Comments were useful but solution was not as desired
Suresh Bansal
Suresh Bansal
ASKER
Link definitely shows too many provides for Visual Studios .Net environments
Problems are
a) They shows different providers for different Oracle Versions which make the things too comlicated
msdaora provides is working perfectly with all versions of Oracle but it runs from 32 Bit clients only.
However it works well with Oracle 32 Bit as well as Oracle 64 Bit versions
b) We are not able to find out which provider will work for 64 Bit windows clients in Windows from the huge list of Providers
c) How do we know the syntix for connecting to Oracle using Vb.net environment which were like
tConnstring = "Provider=MSDAORA.1;Passwo
using msdaora provider
We are interested for One oracle provider which can work in 64 bit windows clients but for all Oracle versions may be 32 bit 10g, 64 bit 10g or 64 11g or 32 bit 11g etc.
Suresh Bansal