• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 5621
  • Last Modified:

System.Data.OracleClient requires Oracle client software version 8.1.7 or greater Error!!

I am having following setup:

Com1: This machine has Oracle 10g XE installed and i am developing my application here in .Net 3.5 sp1. The application is to backup data on the machine using oracle database.

Com2: This machine is having .net framework 3.5 sp1 installed and is not having Oracle.

When i run my application from com1, it successfully connects to database and backups the data.

But, on running the application from com2 i get following error : "System.Data.OracleClient requires Oracle client software version 8.1.7 or greater"

I am using the OracleClient class to access Oracle in my application.

I far as i know we do not need to install Oracle client on every machine where we need to run an application accessing oracle server.

Please tell what can be the possible cause of this error.
  • 2
  • 2
1 Solution
Include the oracle_home in the path .
prakhardeepAuthor Commented:
But the computer from which i am running the application is not having Oracle installed.

I have checked using Wireshark by capturing the packets going from com2 to com1. No packets are sent.

Which means that the application is giving error before sending any packet for connection opening.

On checking the error log, i found out that the error was coming from function Open() of OracleConnection class. Which means that the application is not able to recognize this function when running from com2 but is able to do so when running from com1.
You have to use either ADO.NET or ODP.NET to connect Oracle.

First  install the .NET Managed Provider for Oracle. This will allowed you to
make a connection to Oracle with a windows Forms test application running
locally on the server.  
After that  install the MDAC 2.8 components.

prakhardeepAuthor Commented:
We can do it with OracleClient also with following setup:

Actually, the OracleClient class of .Net uses library functions of Oracle dll's to connect to remote Oracle Server.

So, to run your client application having OracleClient class we need to have the Oracle Client dll's installed.

This can be done in two ways:

1. Install Oracle Client on the remote machine, this will require you to run the setup on every machine where you need to run your client application
2. Use the Oracle Instant Client dll's with your client application. You can download the Oracle instant client from the Oracle website. It is just a zip file with the required dll files. Then just copy the dll's in the folder of your client exe.

For downloading InstantClient for Windows x32 : http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/winsoft.html
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: Site Down Detector

Helpful to verify reports of your own downtime, or to double check a downed website you are trying to access.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now