Improve company productivity with a Business Account.Sign Up


ora-12203 TNS unable to connect to destination

Posted on 2004-04-02
Medium Priority
Last Modified: 2013-12-11
i have installed 9i database and it is working well but the problem is in the form developer
it dose not connect to the database and gives me this error "TNS unable to connect to destination"
my processor is 'pentium 4' and my database is in the same computer and i am not using a network
please i need this help as soon as possible....thank you
Question by:amany_ahmed
  • 2
  • 2
  • 2
  • +1

Expert Comment

ID: 10746210
Hi amany_ahmed,

Oracle uses a tnsnames.ora file which was probably written when you used the Net8 Configuration Assistant; by default it is stored in ORACLE_HOME\network\admin. That means that each ORACLE_HOME has it's own tnsnames.ora that it looks for.

You could copy the file from the ORACLE_HOME that's working to one that's not, but there are easier ways. I'm going to recommend that you set the TNS_ADMIN parameter in the registry.

Consider the following sample which has 9i database in HOME1 and form developer in HOME2.

Open 'regedit' and browse to the HOME1:

ORACLE_HOME = c:\oracle\ora91
[NEW KEY] TNS_ADMIN = c:\oracle\ora91\network\admin

ORACLE_HOME = c:\oracle\formsdev
[NEW KEY] TNS_ADMIN = c:\oracle\ora91\network\admin

This is your most likely difficulty. I'll be happy to give other suggestions or more detail if you ask.

Does that make sense?

Author Comment

ID: 10748774
Hi barthdev
 thank you for your help, but i have done what  you have told me but the error is still there .
it will be nice of you if you send me  any other suggestions.

Expert Comment

ID: 10748961

Start > Run > cmd
> cd c:\oracle\ora91\bin
(to your actual database home)
> tnsping <sid>
(your actual database sid)

What happens?

And what is your actual database home?

And how did you set your TNS_ADMIN?
The 14th Annual Expert Award Winners

The results are in! Meet the top members of our 2017 Expert Awards. Congratulations to all who qualified!


Expert Comment

ID: 10751292

you can use tnsping program to test definition and connection.

on ms-doc command prompt, write;

tnsping databasename

LVL 48

Expert Comment

ID: 10755250
Oracle Server <---> Developer 6i:
Oracle Developer6i and the Oracle8i database require separate Oracle home directories.
Even if you configure SQL*net (Net8) in the Oracle home that your database Oracle server uses, so that you can connect via SQL*Plus, that does not allow Developer2000 to connectsuccessfuly to the Oracle server.  You also need to configure SQL*Net (in tnsnames.ora file) in the
Oracle home for Developer2000.  You can do that either using the GUI tools, or to copy two files:
sqlnet.ora and tnsnames.ora from your 8i Oracle home to your Developer2000 Oracle home.  In your 8i
Oracle home these files are in: \Network\admin, but in your Developer2000 home they are in: \Net80\Admin. A safety measure is to save a copy of them first, before you make changes or copy other ones in. This is so because you have to keep a way for restoring the files if you make a mistake.
This is a generic advise I collected for a year answering to this kind of questions.
About connection between Personal Oracle and Forms 6 look at

You can use the "Oracle Net 8 assistant", "Oracle Net 8 Easy config" to see if you have the appropriate entry to the server in the local tnsnames.ora file (find it!). I mean that one in the Client or Forms&Reports home, not that one in the Oracle_Home.
Under local I mean the file tnsnames.ora  in your application, not at the Oracle Server - this is a common mistake.

You have to have there an entry like: =
      (ADDRESS = (PROTOCOL = TCP)(HOST = = 1521))
      (SERVICE_NAME = REKS816)

Be aware that in old versions of Oracle instead of SERVICE_NAME you have to use SID. So (SERVICE_NAME = REKS816)will be (SID = REKS816)
It is a bad practice, but you can add such entry using simple text editor. But before that make a copy of tnsnames.ora in order to restore it if you do not succeed.

Author Comment

ID: 10769625
sorry for being late ,

i have tried the first soluation (tnsping) but my database use character set of(arabic) so it show me symbolic words which i cann't
understand .

the other soulation (changing in files) i tried it befor but it didn't work.

and by the way i checked up the file of the error detailes and it show me that  "there was
an error in protocol compatable"

and there is something else,
when i install the same versionof dev. on another pc which has  the same version of windows(2000) ,the developer connected to the database correctly, and the  other pc has no different hardware except the network card.

is this can make that difference ,cause really i want to know from where it comes that error.

thank you
LVL 48

Accepted Solution

schwertner earned 2000 total points
ID: 10772220
Look, the problem is clear.
If you use Arabic letters this means that you have created your DB using AL32UTF8.
BUT ... this character set is unknown in the world of 8i and your Forms belongs to this 8i world!!!

WORKAROUND: Download from Metalink the latest Forms patch (at least Patch 12) and apply it. You will have no problems. The same about Oracle 8,8i clients - they will not work against the 9i DB!

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

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

Cursors in Oracle: A cursor is used to process individual rows returned by database system for a query. In oracle every SQL statement executed by the oracle server has a private area. This area contains information about the SQL statement and the…
This post first appeared at Oracleinaction  ( Anju Garg (Myself). I  will demonstrate that undo for DML’s is stored both in undo tablespace and online redo logs. Then, we will analyze the reaso…
This video shows how to copy a database user from one database to another user DBMS_METADATA.  It also shows how to copy a user's permissions and discusses password hash differences between Oracle 10g and 11g.
Video by: Steve
Using examples as well as descriptions, step through each of the common simple join types, explaining differences in syntax, differences in expected outputs and showing how the queries run along with the actual outputs based upon a simple set of dem…

606 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question